timer.scheduleAtFixedrate( new TimerTask(){ public voID run(){ try { fun1(); } catch (Exception e) {e.printstacktrace(); } } },60000); public voID fun1(){ //want to display toast}
我收到以下错误:
WARN/System.err(593): java.lang.RuntimeException: Can’t create handler insIDe thread that has not called Looper.prepare()
WARN/System.err(593): at androID.os.Handler.(Handler.java:121)
WARN/System.err(593): at androID.Widget.Toast.(Toast.java:68)
WARN/System.err(593): at androID.Widget.Toast.makeText(Toast.java:231)
谢谢.
解决方法 您不能在单独的Thread内部进行UI更新,例如Timer.您应该使用Handler对象进行UI更新:timer.scheduleAtFixedrate( new TimerTask() {private Handler updateUI = new Handler(){@OverrIDepublic voID dispatchMessage(Message msg) { super.dispatchMessage(msg); fun1();}};public voID run() { try {updateUI.sendEmptyMessage(0);} catch (Exception e) {e.printstacktrace(); }}},60000);总结
以上是内存溢出为你收集整理的android – 如何在计时器中显示吐司?全部内容,希望文章能够帮你解决android – 如何在计时器中显示吐司?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)