একটি সহজ গেম করার জন্য, আমি একটি টেমপ্লেট ব্যবহার করেছি যা বিটম্যাপগুলির সাথে এর মতো ক্যানভাস আঁকে:
private void doDraw(Canvas canvas) {
for (int i=0;i<8;i++)
for (int j=0;j<9;j++)
for (int k=0;k<7;k++) {
canvas.drawBitmap(mBits[allBits[i][j][k]], i*50 -k*7, j*50 -k*7, null); } }
(ক্যানভাসটি "রান ()" এ সংজ্ঞায়িত করা হয়েছে / সারফেসভিউ একটি গেমথ্রেডে বাস করে))
আমার প্রথম প্রশ্নটি হল আমি কীভাবে একটি নতুন বিন্যাসের জন্য পুরো ক্যানভাসটি সাফ (বা পুনরায় আঁকা) করব ?
দ্বিতীয়ত, আমি কীভাবে পর্দার একটি অংশ আপডেট করতে পারি?
// This is the routine that calls "doDraw":
public void run() {
while (mRun) {
Canvas c = null;
try {
c = mSurfaceHolder.lockCanvas(null);
synchronized (mSurfaceHolder) {
if (mMode == STATE_RUNNING)
updateGame();
doDraw(c); }
} finally {
if (c != null) {
mSurfaceHolder.unlockCanvasAndPost(c); } } } }