android 的Handler类的用法

 

   <LinearLayout
    android:orientation="horizontal"
    android:layout_width="fill_parent">
    <TextView
    android:id="@+id/instruction"
    android:layout_width="fill_parent"
    android:layout_weight="0.8"
    />
    <TextView
    android:id="@+id/lend"
    android:layout_width="fill_parent"
    android:shadowRadius="0.3"/>
    </LinearLayout>


Handler的使用  线程
runable接口实现的run 函数并没有启动新线程,而是在当前线程中执行。
Runnable r=new Runable(){
public void run(){
//程序执行代码}}
Handler和使用线程的这个activity是在同一个线程当中
private Handler handler=new Handler();
Thread.currentThread().getId();
Thread.currentThread().getName();

这和标准java实现线程是不同的
Thread t=new Thread (r);
t.start();这样线程和主线程就不同了^_^  (*^__^*) 嘻嘻……
handler.post(r);时并没有调用线程的start方法
Bundle对象:以string为键是一种比较特殊的表map,是一个数据存储工具

loop类:提供循环的从队列中取得休息。
HandlerThread类就可以循环处理等待的线程(消息队列)
HandlerThread.getlooper
Handler.handlemassge
handler.obtainMessage
Message.sendToTarget(handler)
 
Message.obj;传递少量数据
Message.setData(Bundle)
Bundle b=new Bundle();
b.putInt("age",20);
b.putString("name",joy)O(∩_∩)O哈哈~  不错不错
int age=b.getData("name");

使用HandlerThread的getLooper前一定要调用该类的handthread。start();


异步消息处理:在新线程中handlemessage
执行前修改下mainfest文件

你可能感兴趣的:(android 的Handler类的用法)