摘要:把它用在android中实现标题的更换(3秒更换一次):只需要编写Activity实现即可,这里有两种方法,可以根据自己习惯选择使用(个人较喜欢第一种):

小宝典致力于为广大程序猿(媛)提供高品质的代码服务,请大家多多光顾小站,小宝典在此谢过。

对于多线程我们已经有了些许认识,现在就对其进一步的学习应用吧。

把它用在android中实现标题的更换(3秒更换一次):

只需要编写Activity实现即可,这里有两种方法,可以根据自己习惯选择使用(个人较喜欢第一种):

(1)Runnable:

[html] ?

public class MainActivity extends Activity { ?

? ? private int count = 1; ?

? ? private Handler handler = new Handler() { ?

? ? ? ? public void handleMessage(android.os.Message msg) { ?

? ? ? ? ? ? switch (msg.what) { ?

? ? ? ? ? ? case 1: ?

? ? ? ? ? ? ? ? updateTitle(); ?

? ? ? ? ? ? ? ? break; ?

? ? ? ? ? ? default: ?

? ? ? ? ? ? ? ? break; ?

? ? ? ? ? ? } ?

??

? ? ? ? } ?

? ? }; ?

??

? ? @Override ?

? ? public void onCreate(Bundle savedInstanceState) { ?

? ? ? ? super.onCreate(savedInstanceState); ?

? ? ? ? setContentView(R.layout.activity_main); ?

? ? ? ? new Thread(new TitleThread()).start(); ?

? ? } ?

??

? ? protected void updateTitle() { ?

? ? ? ? setTitle("my bolg" + count++); ?

??

? ? } ?

??

? ? class TitleThread implements Runnable { ?

??

? ? ? ? @Override ?

? ? ? ? public void run() { ?

??

? ? ? ? ? ? while (true) { ?

? ? ? ? ? ? ? ? Message message = new Message(); ?

? ? ? ? ? ? ? ? message.what = 1; ?

? ? ? ? ? ? ? ? handler.sendMessage(message); ?

? ? ? ? ? ? ? ? try { ?

? ? ? ? ? ? ? ? ? ? Thread.sleep(3000); ?

? ? ? ? ? ? ? ? } catch (InterruptedException e) { ?

? ? ? ? ? ? ? ? ? ? e.printStackTrace(); ?

? ? ? ? ? ? ? ? } ?

? ? ? ? ? ? } ?

??

? ? ? ? } ?

? ? } ?

??

? ? @Override ?

? ? public boolean onCreateOptionsMenu(Menu menu) { ?

? ? ? ? getMenuInflater().inflate(R.menu.activity_main, menu); ?

? ? ? ? return true; ?

? ? } ?

??

} ?

?

(2)Timer:

[html]?

public class TimerActivity extends Activity { ?

? ? private int count=1; ?

? ? private Handler handler=new Handler(){ ?

? ? ? ? public void handleMessage(android.os.Message msg){ ?

? ? ? ? ? ? switch(msg.what){ ?

? ? ? ? ? ? case 1: ?

? ? ? ? ? ? ? ? updateTitle(); ?

? ? ? ? ? ? ? ? break; ?

? ? ? ? ? ? default: ?

? ? ? ? ? ? ? ? break; ?

? ? ? ? ? ? ??

? ? ? ? ? ? } ?

? ? ? ? ? ? ??

? ? ? ? } ?

? ? }; ?

??

? ? @Override ?

? ? public void onCreate(Bundle savedInstanceState) { ?

? ? ? ? super.onCreate(savedInstanceState); ?

? ? ? ? setContentView(R.layout.activity_timer); ?

? ? ? ? Timer timer=new Timer(); ?

? ? ? ? timer.scheduleAtFixedRate(new TimerTask() { ?

? ? ? ? ? ? ??

? ? ? ? ? ? @Override ?

? ? ? ? ? ? public void run() { ?

? ? ? ? ? ? ? ? Message message=new Message(); ?

? ? ? ? ? ? ? ? message.what=1; ?

? ? ? ? ? ? ? ? handler.sendMessage(message); ?

? ? ? ? ? ? } ?

? ? ? ? }, 1000,3000); ?

? ? } ?

??

? ? protected void updateTitle() { ?

? ? ? ? setTitle("hello"+(count++)); ?

? ? ? ? ??

? ? } ?

??

? ? @Override ?

? ? public boolean onCreateOptionsMenu(Menu menu) { ?

? ? ? ? getMenuInflater().inflate(R.menu.activity_timer, menu); ?

? ? ? ? return true; ?

? ? } ?

??

? ? ??

} ?

?

对于多线程我们已经有了些许认识,现在就对其进一步的学习应用吧。

把它用在android中实现标题的更换(3秒更换一次):

只需要编写Activity实现即可,这里有两种方法,可以根据自己习惯选择使用(个人较喜欢第一种):

(1)Runnable:

[html] ?

public class MainActivity extends Activity { ?

? ? private int count = 1; ?

? ? private Handler handler = new Handler() { ?

? ? ? ? public void handleMessage(android.os.Message msg) { ?

? ? ? ? ? ? switch (msg.what) { ?

? ? ? ? ? ? case 1: ?

? ? ? ? ? ? ? ? updateTitle(); ?

? ? ? ? ? ? ? ? break; ?

? ? ? ? ? ? default: ?

? ? ? ? ? ? ? ? break; ?

? ? ? ? ? ? } ?

??

? ? ? ? } ?

? ? }; ?

??

? ? @Override ?

? ? public void onCreate(Bundle savedInstanceState) { ?

? ? ? ? super.onCreate(savedInstanceState); ?

? ? ? ? setContentView(R.layout.activity_main); ?

? ? ? ? new Thread(new TitleThread()).start(); ?

? ? } ?

??

? ? protected void updateTitle() { ?

? ? ? ? setTitle("my bolg" + count++); ?

??

? ? } ?

??

? ? class TitleThread implements Runnable { ?

??

? ? ? ? @Override ?

? ? ? ? public void run() { ?

??

? ? ? ? ? ? while (true) { ?

? ? ? ? ? ? ? ? Message message = new Message(); ?

? ? ? ? ? ? ? ? message.what = 1; ?

? ? ? ? ? ? ? ? handler.sendMessage(message); ?

? ? ? ? ? ? ? ? try { ?

? ? ? ? ? ? ? ? ? ? Thread.sleep(3000); ?

? ? ? ? ? ? ? ? } catch (InterruptedException e) { ?

? ? ? ? ? ? ? ? ? ? e.printStackTrace(); ?

? ? ? ? ? ? ? ? } ?

? ? ? ? ? ? } ?

??

? ? ? ? } ?

? ? } ?

??

? ? @Override ?

? ? public boolean onCreateOptionsMenu(Menu menu) { ?

? ? ? ? getMenuInflater().inflate(R.menu.activity_main, menu); ?

? ? ? ? return true; ?

? ? } ?

??

} ?

?

(2)Timer:

[html]?

public class TimerActivity extends Activity { ?

? ? private int count=1; ?

? ? private Handler handler=new Handler(){ ?

? ? ? ? public void handleMessage(android.os.Message msg){ ?

? ? ? ? ? ? switch(msg.what){ ?

? ? ? ? ? ? case 1: ?

? ? ? ? ? ? ? ? updateTitle(); ?

? ? ? ? ? ? ? ? break; ?

? ? ? ? ? ? default: ?

? ? ? ? ? ? ? ? break; ?

? ? ? ? ? ? ??

? ? ? ? ? ? } ?

? ? ? ? ? ? ??

? ? ? ? } ?

? ? }; ?

??

? ? @Override ?

? ? public void onCreate(Bundle savedInstanceState) { ?

? ? ? ? super.onCreate(savedInstanceState); ?

? ? ? ? setContentView(R.layout.activity_timer); ?

? ? ? ? Timer timer=new Timer(); ?

? ? ? ? timer.scheduleAtFixedRate(new TimerTask() { ?

? ? ? ? ? ? ??

? ? ? ? ? ? @Override ?

? ? ? ? ? ? public void run() { ?

? ? ? ? ? ? ? ? Message message=new Message(); ?

? ? ? ? ? ? ? ? message.what=1; ?

? ? ? ? ? ? ? ? handler.sendMessage(message); ?

? ? ? ? ? ? } ?

? ? ? ? }, 1000,3000); ?

? ? } ?

??

? ? protected void updateTitle() { ?

? ? ? ? setTitle("hello"+(count++)); ?

? ? ? ? ??

? ? } ?

??

? ? @Override ?

? ? public boolean onCreateOptionsMenu(Menu menu) { ?

? ? ? ? getMenuInflater().inflate(R.menu.activity_timer, menu); ?

? ? ? ? return true; ?

? ? } ?

??

? ? ??

} ?

?

觉得可用,就经常来吧! 脚本宝典 欢迎评论哦!?html5教程,巧夺天工,精雕玉琢。小宝典献丑了!

本文固定链接: http://www.js-code.com/html5%e6%95%99%e7%a8%8b/html5%e6%95%99%e7%a8%8b_3009.html