我想写一个白板应用程序。我有一个开始渲染位图(绘图页),然后将该位图复制到surfaceView。它在模拟器中完美工作,但是当我在Samsung Galaxy Ace上运行它时,它意外关闭。此代码:canvas.setBitmap(位图)在模拟器中工作,但不在电话上
public void surfaceCreated(SurfaceHolder holder) {
Log.d(TAG, "Create surface");
mo_paper = BitmapFactory.decodeResource(getResources(), R.drawable.paper);
Log.d(TAG, "Created paper");
mo_easel = new Canvas();
Log.d(TAG, "Created easel");
mo_easel.setBitmap(mo_paper);
Log.d(TAG, "Set easel");
mo_matrix = new Matrix();
Log.d(TAG, "Assets loaded");
mainThread.setRunning(true);
mainThread.start();
Log.d(TAG, "Threads started");
}
输出“创建画架”而非“设置画架”,所以它出现在.setBitmap()方法导致错误。
画有什么错误完全在ddms/logcat中? – Peterdk 2012-03-26 21:59:37
另外,位图有多大(以像素为单位)? – antlersoft 2012-03-26 22:00:16
@Peterdk - logcat只是炸弹。我不明白如何使用DDMS! ;) – 2012-03-27 09:04:35