Button StopB = (Button)findViewById(R.id.stop_Button);
StopB.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
stop = true;
}
});
}
//When the user clicks the start button
public void onClick_Start(View v)
{
counter = 0;
condition = true;
while(condition)
{
if(mLastX == -1)
{
counter++;
}
if(stop)
condition = false;
}
}
答案 0 :(得分:1)
onClick_Start
内的代码控制UI线程。 UI线程中的任何其他内容都不会执行,直到您从{{1}}退出。
使用AsyncTask执行后台任务。
http://developer.android.com/reference/android/os/AsyncTask.html
答案 1 :(得分:0)
在AsyncTask中执行onClick_Start方法。像UI线程上的while循环一样长时间运行并不好。这就是你遇到ANR ERROR
的原因