当前位置:操作系统 > 安卓/Android >>

Android线程实例讲解

本文只是一个关于Android线程之间通信的例子,高手请自动略过。例子主要实现如下功能:进度条,音乐播放进度显示,图片的移动。

游戏部分源码:

LoadBar.java

1.    package com.dance.mrljdx; 

2.   

3.    import android.app.Activity; 

4.    import android.content.Intent; 

5.    import android.os.Bundle; 

6.    import android.os.Handler; 

7.    import android.os.Message; 

8.    import android.util.DisplayMetrics; 

9.    import android.util.Log; 

10.   import android.widget.ProgressBar; 

11.   import android.widget.TextView; 

12.  

13.   public class LoadBar extends Activity { 

14.       /** Called when the activity is first created. */ 

15.       TextView txview=null,txload=null; 

16.       ProgressBar pBar=null; 

17.       protected static final int stop=1; 

18.       protected static final int start=2; 

19.       int intCounter=1; 

20.       @Override 

21.       public void onCreate(Bundle savedInstanceState) { 

22.           super.onCreate(savedInstanceState); 

23.           setContentView(R.layout.loadbar); 

24.           //DisplayMetrics 获取屏幕信息 

25.           DisplayMetrics dm=new DisplayMetrics(); 

26.           getWindowManager().getDefaultDisplay().getMetrics(dm); 

27.           int screenwith=dm.widthPixels; 

28.           int screenheigh=dm.heightPixels; 

29.           txview=(TextView)findViewById(R.id.textwh); 

30.           txload=(TextView)findViewById(R.id.loadtext); 

31.           pBar=(ProgressBar)findViewById(R.id.pb); 

32.           txview.setText("屏幕宽度:"+screenwith+"\n屏幕长度:"+screenheigh);        //通过线程来改变ProgressBar的值 

33.            

34.           new Thread(new Runnable() { 

35.               public void run() 

36.               { 

37.                   for (int i = 0; i <=pBar.getMax(); i++) 

38.                   { 

39.                       try 

40.                       { 

41.                           Thread.sleep(100); 

42.                           iintCounter=i+1; 

43.                           if (i == pBar.getMax()) 

44.                           { 

45.                               Message m = new Message(); 

46.                               m.what=LoadBar.stop; //what是一个整形值 

47.                               LoadBar.this.myMessageHandler.sendMessage(m); 

48.                               //将处理信息发送给myMessageHandler处理 

49.                               break; 

50.                           } 

51.                           else 

52.                           { 

53.                               Message m = new Message(); 

54.                               m.what=LoadBar.start; 

55.                               LoadBar.this.myMessageHandler.sendMessage(m); 

56.                           } 

57.                       } 

58.                       catch (Exception e) 

59.                       { 

60.                           e.printStackTrace(); 

61.   &n

补充:移动开发 , Android ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,