(1)handler的方法一般会启动在主线程中,原则是在那个线程中定义(new handler)就会在那个线程中运行。
(2)handler 的postdelayed方法表示post发送delayed延迟。
startActivity的几种小细节:
背景:
handler和点击事件的配合导致多次启动activity
解决:
(1)在清单文件中配置activity时 启动模式设置为单一启动模式,lunch—mode=“single...”
但是这样还是有bug,就是快速退出后handler一样会在指定的延迟时间启动activity
可以将handler取消。调用handler.removecallbacksendmessage();
这样要独立定义handler,即 Handler hanler=new Handler();
(2)指定布尔类型的标识:
当第一次要启动activity的时候就将其改为true(默认为false),这样就会完全解决这个bug。
log.e(TAG,.....)小细节:
****.activity.calss.getsimplename();这样可以拿到这个类的名字,随着类名的更新而更新。