我在logcat上看到Here3和Here4 True True但是命令(alertdialog,mediaPlayerStop和VibrateStop)在run()方法中不起作用。有什么建议吗? 提前谢谢。
if(check == 1)
{
Log.i("XXX", "Here3");
runOnUiThread(new Runnable()
{
@Override
public void run()
{
new Handler().postDelayed(new Runnable()
{
@Override
public void run()
{
Log.i("XXX", "Here4 " + voiceSwitch.isChecked() + " " + vibrateSwitch.isChecked());
if(voiceSwitch.isChecked())
{
mediaPlayerStop();
}
if(vibrateSwitch.isChecked())
{
vibrateStop();
}
builder.show().dismiss();
}
}, 5000);
}
});
}
答案 0 :(得分:1)
你不能在UI上使用run thread
使用AsynckTask
类并使用builder.show().dismiss();
答案 1 :(得分:-1)
可能是一个简单的遗漏,比如我可以看到这一行
new Handler().postDelayed(new Runnable()
没有关闭)
猜猜应该是:
new Handler().postDelayed(new Runnable());