Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
これら 2 つの式が同時に真になることはありますか? ホルダー.getSurface().isValid() == true; および canvas = holder.lockCanvas() canvas == null;
参照から:
isValid() - このオブジェクトは有効なサーフェスを保持しているか? 物理サーフェスを保持している場合は true を返すため、lockCanvas() は成功します。
そのため、lockCanvas() が成功すると、null 以外のキャンバスが返されます。
ただし、Surface に直接アクセスしないでください (同期が必要です) 。canvas が null でない場合にのみsurfaceChanged呼び出しcanvas = holder.lockCanvas()て描画できます。
surfaceChanged
canvas = holder.lockCanvas()