【发布时间】:2013-08-13 05:22:38
【问题描述】:
我的应用程序有一个将视图设置为 SurfaceView 的 mainActivity。
应用程序已启动并正确显示。 我按下主页按钮。-> onPause 调用,Surfaceview 被破坏并且线程被正确杀死。 现在,当我再次单击我的应用程序时,未调用 OnResume 并且我看不到任何事情发生,事实上手机卡住了。
每当我有一个新的表面时,我都会创建一个新线程。
我不确定为什么这段代码有问题,但我主要怀疑 SurfaceView 中处理不当。?
请帮忙!!
@Override
public void surfaceCreated(SurfaceHolder arg0) {
// TODO Auto-generated method stub
BounceLogger.logIt(this, "surfaceCreated");
graphThread=new GraphUpdaterThread(mSurfaceHolder);
graphThread.runThread();
}
@Override
public void surfaceDestroyed(SurfaceHolder arg0) {
// TODO Auto-generated method stub
BounceLogger.logIt(this, "surfaceDestroyed");
graphThread.stopThread();
graphThread= null;
}
@Override
public void onPause()
{
super.onPause();
//handleProcessPaused();
//mGsv.getThread().pauseThread();
BounceLogger.logIt(this,"onPause()");
}
@Override
public void onResume()
{
super.onResume();
//mGsv.getThread().resumeThread();
//init();
BounceLogger.logIt(this,"onResume()");
}
【问题讨论】:
-
你试过调用surfaceChanged()吗?当大小改变或首次创建时调用该方法。
标签: android surfaceview onresume