java程序 去黑屏_重新打开应用程序后,SurfaceView,黑屏

我有一个活动,它调用一个扩展SurfaceView并实现Runnable的类,并将activity类的contentView()设置为surfaceview类的实例 . 在最小化活动后,我暂停并销毁线程:

public void pause(){

running = false;

while(true){

try{

renderThread.join();

break;

}catch(InterruptedException e){

//retry

}

}

}

当活动恢复时我重新创建线程:

public void resume(){

running = true;

renderThread = new Thread(this);

renderThread.start();

}

请注意,这些是在onPause()和onResume()活动方法中调用的 .

public void run(){

while(running){//thred loop

if(!holder.getSurface().isValid())

continue;

if(puzzleDrawn!=true) {

canvas = holder.lockCanvas();

drawPuzzle(canvas);

holder.unlockCanvasAndPost(canvas);

}

}

}

public void drawPuzzle(canvas){

//draws on canvas

}

当我尝试重新打开应用程序时,我看到一个黑屏 . 我需要绘制一次drawPuzzle(canvas)方法 . 有小费吗?

如果你需要更多信息,请告诉我!谢谢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值