Handler

Handler:

  1. 创建Handler对象 重写handleMessage()方法 处理数据逻辑

  2. 创建新线程 myHandler.sendEmptyMessage() 传入数据

 1 public class MainActivity extends Activity
 2 {
 3     // 定义周期性显示的图片的ID
 4     int[] imageIds = new int[]
 5             {
 6                     R.drawable.java,
 7                     R.drawable.javaee,
 8                     R.drawable.ajax,
 9                     R.drawable.android,
10                     R.drawable.swift
11             };
12     int currentImageId = 0;
13     @Override
14     public void onCreate(Bundle savedInstanceState)
15     {
16         super.onCreate(savedInstanceState);
17         setContentView(R.layout.activity_main);
18         final ImageView show = (ImageView) findViewById(R.id.show);
19         final Handler myHandler = new Handler()
20         {
21             @Override
22             public void handleMessage(Message msg)
23             {
24                 // 如果该消息是本程序所发送的
25                 if (msg.what == 0x1233)
26                 {
27                     // 动态地修改所显示的图片
28                     show.setImageResource(imageIds[currentImageId++
29                             % imageIds.length]);
30                 }
31             }
32         };
33         // 定义一个计时器,让该计时器周期性地执行指定任务
34         new Timer().schedule(new TimerTask()
35         {
36             @Override
37             public void run()
38             {
39                 // 发送空消息
40                 myHandler.sendEmptyMessage(0x1233);
41             }
42         }, 0, 1200);
43 
44 //        new Thread(new Runnable()
45 //        {
46 //            @Override
47 //            public void run()
48 //            {
49 //                //do something
50 //            }
51 //        }).start();
52     }
53 }

 

posted on 2015-11-14 17:35  starFarming  阅读(130)  评论(0编辑  收藏  举报