上一页 1 ··· 3 4 5 6 7 8 9 下一页
摘要: package com.himi; import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.NinePatch; import android.graphics.Paint; import android.graphics.RectF; import android.uti. 阅读全文
posted @ 2011-08-01 10:05 OYK 阅读(1680) 评论(1) 推荐(0) 编辑
摘要: andriod提供了 Handler 和 Looper 来满足线程间的通信。例如一个子线程从网络上下载了一副图片,当它下载完成后会发送消息给主线程,这个消息是通过绑定在主线程的Handler来传递的。在Android,这里的线程分为有消息循环的线程和没有消息循环的线程,有消息循环的线程一般都会有一个Looper,这个事android的新 概念。我们的主线程(UI线程)就是一个消息循环的线程。针对这种消息循环的机制,我们引入一个新的机制Handle,我们有消息循环,就要往消息循环里 面发送相应的消息,自定义消息一般都会有自己对应的处理,消息的发送和清除,消息的的处理,把这些都封装在Handle里 阅读全文
posted @ 2011-08-01 00:08 OYK 阅读(700) 评论(0) 推荐(0) 编辑
摘要: 一:什么是NDK?NDK 提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so 和java 应用一起打包成apk。这些工具对开发者的帮助是巨大的。NDK 集成了交叉编译器,并提供了相应的mk 文件隔离CPU、平台、ABI 等差异,开发人员只需要简单修改mk 文件(指出“哪些文件需要编译”、“编译特性要求”等),就可以创建出so。NDK 可以自动地将so 和Java 应用一起打包,极大地减轻了开发人员的打包工作。比较简单的说,NDK是一套交叉编译工具,它可以帮你把你用C或C++书写的代码,编译为.so(类似与win下的.dll)格式的文件,使你可以在你的Android程序 阅读全文
posted @ 2011-07-31 23:08 OYK 阅读(1043) 评论(0) 推荐(0) 编辑
摘要: Linux系统中进程间通信的方式有:socket, named pipe,message queque, signal,share memory。Java系统中的进程间通信方式有socket, named pipe等。android应用程序理所当然可以应用JAVA的IPC机制实现进程间的通信,取而代之的是Binder通信。Google为什么要采用这种方式呢,这取决于Binder通信方式的高效率。 Binder通信是通过linux的binder driver来实现的。Binder通信操作类似线程迁移(thread migration),两个进程间IPC看起来就象是一个进程进入另一个进程执行代码然 阅读全文
posted @ 2011-07-31 20:26 OYK 阅读(11352) 评论(0) 推荐(0) 编辑
摘要: 判断Android文件名是否安全技巧public static boolean IsFileNameOK(String filepath) { return Pattern.compile("[\\w%+,./=_-]+").matcher(filepath).matches(); } public static boolean IsFileNameOK(File file) { return Pattern.compile("[\\w%+,./=_-]+").matcher(file.getPath()).matches(); }一.获得控制台用户输入 阅读全文
posted @ 2011-07-30 00:03 OYK 阅读(438) 评论(0) 推荐(0) 编辑
摘要: android:allowTaskReparenting 用来标记Activity能否从启动的Task移动到有着affinity的Task(当这个Task进入到前台时)——“true”,表示能移动,“false”,表示它必须呆在启动时呆在的那个Task里。 如果这个特性没有被设定,设定到<application>元素上的allowTaskReparenting特性的值会应用到Activity上。默认值为“false”。 一般来说,当Activity启动后,它就与启动它的Task关联,并且在那里耗尽它的整个生命周期。当当前的Task不再显示时,你可以使用这个特性来强制Activity 阅读全文
posted @ 2011-06-30 09:52 OYK 阅读(2014) 评论(0) 推荐(1) 编辑
摘要: 原文地址 http://developer.android.com/guide/practices/ui_guidelines/icon_design.htmlActivity和Task是Android Application Framework架构中最基础的应用,开发者必须清楚它们的用法和一些开发技巧。本文用大量的篇幅并通过引用实例的方式一步步深入全面讲解它们的基础原理(underlying principles)和架构(mechanisms),例如:Navigation、Multitasking、activity re-use、intents和activity stack等…大部分与其相 阅读全文
posted @ 2011-06-16 10:22 OYK 阅读(813) 评论(2) 推荐(0) 编辑
摘要: 一、 变量的定义和缺省初始化c++ 中声明变量的时候大多的进行了定义(即分配了内存),特例有:1) extent int x,仅仅声明了x,没有为x分配内存。2) 函数的声明(即在调用函数之前进行的声明,此时未定义)。3) 类的声明。java中 方法中的变量在声明时没有初始化,有些人以为会被初始化为null,其实不是.不初始化的话,编译器会报错的.直到被赋值或者被调用。成员变量则在声明时候被初始化,初始化成一个默认值.比如整数为0,对象则被初始化为null。C++中基本类型的数据,只在全局的时候才进行缺省初始化二、 static 由于C++中static的含义要比java广的多。static变 阅读全文
posted @ 2011-06-15 14:46 OYK 阅读(575) 评论(1) 推荐(0) 编辑
摘要: 比如说主窗口A,调用了子窗口B,在B中如何关闭整个Android应用程序? 首先要说明在B中直接使用finish(),接下来手机显示的还是主窗口A,所以一起来看看Android开发网是如何实现的吧. 1.Dalvik VM的本地方法 android.os.Process.killProcess(android.os.Process.myPid()) //获取PID,目前获取自己的也只有该API,否则从/proc中自己的枚举其他进程吧,不过要说明的是,结束其他进程不一定有权限,不然就乱套了。 System.exit(0); //常规java、c#的标准退出法,返回值为0代表正常退出2. 任务管理 阅读全文
posted @ 2011-06-15 12:00 OYK 阅读(393) 评论(0) 推荐(0) 编辑
摘要: 1.滚动加载listView.setOnScrollListener(new OnScrollListener() { //添加滚动条滚到最底部,加载余下的元素 @Override public void onScrollStateChanged(AbsListView view, int scrollState) { if (scrollState == OnScrollListener.SCROLL_STATE_IDLE) { loadRemnantListItem(); } } @Override public void onScroll(AbsListView view, int fi 阅读全文
posted @ 2011-06-15 11:57 OYK 阅读(2268) 评论(2) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 下一页