我有一個類實現runnable與運行功能。Java/Android線程暫停錯誤
@Override
public void run()
{
while(running)
{
// thread code goes here::
threadCode();////
// thread code ends here
try
{
Thread.sleep(10);
}
catch (InterruptedException e)
{
e.printStackTrace();
}
}
}
現在我試圖暫停線程,如果發生什麼事情。 我試圖使用wait()和notify(),但它崩潰了應用程序,之後我想出了使用「running」布爾值並將其設置爲false作爲暫停,然後返回true以恢復。 不幸的是,它仍然崩潰的應用程序。
它給我logcat致命的錯誤。
「無法創建內螺紋處理程序尚未調用Looper.prepare()」
有什麼工作簡單的方法來暫停一個線程? ;/ Thx
編輯: 它根本不是線程。 我發現它崩潰的地方。 它崩潰的警告對話框 這裏是它的代碼:
AlertDialog.Builder builder1 = new AlertDialog.Builder(c);
builder1.setTitle("Game over!");
builder1.setMessage("You survived "+secs+"."+msecs+ " seconds.");
builder1.setCancelable(false);
builder1.setPositiveButton("Replay",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id)
{
// intialStuff();
dialog.cancel();
}
});
builder1.setNegativeButton("Rage quit",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.cancel();
}
});
AlertDialog alert11 = builder1.create();
alert11.show();
我嘗試在畫布類 運行它,也許它不能在畫布類工作? C是主要活動的背景。
什麼是您的logcat告訴你嗎? – 323go 2014-12-02 14:41:35