我目前正在编写一个Android应用程序,其中涉及创建画布的活动和修改画布的线程,我尝试在选项栏中创建一个按钮以返回菜单。菜单肯定有效(因为你必须通过它来启动当前的活动),并且Activity,Canvas和Thread工作(就像你启动它们一样,它们可以正常运行),但是在返回的方法中到菜单Android将不会在意图返回菜单类之后完成startActivity方法。这是在我停止线程并声明意图之后,因为在不同想法的几次迭代中,有时log cat会在startActivity行引发错误。但是,通常情况下,我没有收到错误,而是在动画停止后切换到无法连接的空白黑屏(这可以告诉线程关闭)。我的代码如下:
switch (item.getItemId()) {
case R.id.menureturn:
super.onDestroy();
try {
panel.getThread().setRunning(false);
panel.getThread().join();
} catch (InterruptedException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
Intent menu = new Intent(MainActivity.this, MenuSplash.class);
menu.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
startActivity(menu);
return true;
你能给我的任何帮助都会很棒!
答案 0 :(得分:0)
这个代码是否在UI线程上运行,如果没有尝试在这样的UI线程上创建一个意图:
runOnUiThread(new Runnable(){
public void run() {
// This runs on the UI thread
Intent menu = new Intent(MainActivity.this, MenuSplash.class);
menu.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
startActivity(menu);
}
});