0

これら 2 つの式が同時に真になることはありますか? ホルダー.getSurface().isValid() == true; および canvas = holder.lockCanvas() canvas == null;

4

1 に答える 1

1

参照から:

isValid() - このオブジェクトは有効なサーフェスを保持しているか? 物理サーフェスを保持している場合は true を返すため、lockCanvas() は成功します。

そのため、lockCanvas() が成功すると、null 以外のキャンバスが返されます。

ただし、Surface に直接アクセスしないでください (同期が必要です) 。canvas が null でない場合にのみsurfaceChanged呼び出しcanvas = holder.lockCanvas()て描画できます。

于 2012-09-26T07:02:12.483 に答える