android开发之线程
线程(android)
在java中我们学习了线程,线程,是进程的一个单位,在程序要运行时,会开启线程,运行程序,我们要创建线程就需要我们去继承接口Thread或者实现Runable接口,然后重写run方法,在调用Thread类的start()方法来开启线程。而在android中同样也是如此.但是在android中,多了一个限制:只有主线程才能修改界面。当应用程序启动时,Android首先会开启一个主线程 (即UI线程),主线程管理界面中的UI控件,进行事件分发,我们创建的线程是没有办法直接修改界面。所以我们就需要去使用Handler类来帮助我们修改界面;
Handler类:
主要接受子线程发送的数据,并用此数据配合主线程更新UI。
写一个handler类,继承Handler,重写handlerMessage()方法,然后在该方法里面进行修改界面的操作。
使用Message类的对象来传递消息,然后在handlerMessage()中接收信息,进行修改界面的操作。
实战演练:
在界面上实现会动的小球,每一次点击一下界面,就出现一个小球;
1,实现一个自定义组件,添加到窗体上;在自定义组件中实现每点击一次就可以添加一个小球,把小球对象存在数组中;
2.实现一个线程类,把我们的数组中的对象取出来,在线程的run方法中画出来;并且在实例化一个Message对象,把我们的位图Bitmap发送出去;
3.实现我们的Handler类,重写handlerMessage()方法;接收我们Message传的消息。
界面接收我们的消息的之后,把位图画在界面上就可以了。
这样一个简单地线程游戏就实现了;