日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

android實現打地鼠游戲

瀏覽:47日期:2022-09-24 16:37:42

今天上課老師用Java實現了打地鼠游戲的界面和具體邏輯,那么我也嘗試使用Android語言實現其功能。

首先是打地鼠游戲的玩法

1.每隔1秒或者0.5秒地鼠會出現在九宮格中的任一位置2.點擊界面,如果地鼠出現的位置與點擊位置相同,則認為打中地鼠。否則游戲繼續。3.打中地鼠后,游戲立即停止。

先上兩張效果圖

android實現打地鼠游戲

android實現打地鼠游戲

布局實現

<LinearLayout xmlns:android='http://schemas.android.com/apk/res/android' xmlns:tools='http://schemas.android.com/tools' android:layout_width='match_parent' android:layout_height='match_parent' android:orientation='vertical' > <LinearLayout android:layout_width='match_parent' android:layout_height='wrap_content' android:orientation='horizontal' > <Button android:layout_width='0dp' android:layout_height='wrap_content' android:layout_weight='1' android:onClick='start' android:text='開始' /> <Button android:layout_width='0dp' android:layout_height='wrap_content' android:layout_weight='1' android:onClick='end' android:text='暫停' /> </LinearLayout> <TableLayout android:layout_width='match_parent' android:layout_height='0dp' android:layout_weight='1' > <TableRow android:layout_weight='1' > <TextView android: android:layout_width='wrap_content' android:layout_height='match_parent' android:layout_margin='3dp' android:layout_weight='1' android:background='#d2b48c' android:gravity='center' /> <TextView android: android:layout_width='wrap_content' android:layout_height='match_parent' android:layout_margin='3dp' android:layout_weight='1' android:background='#d2b48c' android:gravity='center' /> <TextView android: android:layout_width='wrap_content' android:layout_height='match_parent' android:layout_margin='3dp' android:layout_weight='1' android:background='#d2b48c' android:gravity='center' /> </TableRow> <TableRow android:layout_weight='1' > <TextView android: android:layout_width='wrap_content' android:layout_height='match_parent' android:layout_margin='3dp' android:layout_weight='1' android:background='#d2b48c' android:gravity='center' /> <TextView android: android:layout_width='wrap_content' android:layout_height='match_parent' android:layout_margin='3dp' android:layout_weight='1' android:background='#d2b48c' android:gravity='center' /> <TextView android: android:layout_width='wrap_content' android:layout_height='match_parent' android:layout_margin='3dp' android:layout_weight='1' android:background='#d2b48c' android:gravity='center' /> </TableRow> <TableRow android:layout_weight='1' > <TextView android: android:layout_width='wrap_content' android:layout_height='match_parent' android:layout_margin='3dp' android:layout_weight='1' android:background='#d2b48c' android:gravity='center' /> <TextView android: android:layout_width='wrap_content' android:layout_height='match_parent' android:layout_margin='3dp' android:layout_weight='1' android:background='#d2b48c' android:gravity='center' /> <TextView android: android:layout_width='wrap_content' android:layout_height='match_parent' android:layout_margin='3dp' android:layout_weight='1' android:background='#d2b48c' android:gravity='center' /> </TableRow> </TableLayout></LinearLayout>

邏輯代碼

需要實現每隔1秒繪制一次界面,且得確定更新地鼠的位置(這里我用的handler來發送循環消息實現的)

ArrayList<TextView>texts;//用來存放九個TextViewHandler handler = new Handler(new Callback() { @Override public boolean handleMessage(Message msg) { number = (int) (Math.random() * 8); System.out.println(number); for (int i = 0; i < arrays.length; i++) { if (i==number) { texts.get(i).setText('地鼠'); }else { texts.get(i).setText(''); } } handler.sendEmptyMessageDelayed(0, 500); return false; } });

這里單獨寫一個TextView的點擊事件(一共九個),這里需要注意的是,我給每個textview都賦給了一個值a,從0-8,當點擊的textview值 a=(地鼠出現的位置)時,我們就可以認為打中了地鼠。

public void onClick(View v) { // TODO Auto-generated method stub switch (v.getId()) { case R.id.text11: if (number==0) { Toast.makeText(this, '打中地鼠了!。。。', 1).show(); handler.removeMessages(0); } break; } }

最后貼上全部代碼。

package com.example.dadishu;import java.io.IOException;import java.util.ArrayList;import java.util.Timer;import java.util.TimerTask;import android.app.Activity;import android.media.MediaPlayer;import android.os.Bundle;import android.os.Handler;import android.os.Handler.Callback;import android.os.Message;import android.view.View;import android.view.View.OnClickListener;import android.view.Window;import android.widget.TextView;import android.widget.Toast;public class MainActivity extends Activity implements OnClickListener { private int number; private TextView text11; private TextView text12; private TextView text13; private TextView text21; private TextView text22; private TextView text23; private TextView text31; private TextView text32; private TextView text33; private int[] arrays = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; ArrayList<TextView> texts; Handler handler = new Handler(new Callback() { @Override public boolean handleMessage(Message msg) { number = (int) (Math.random() * 8); System.out.println(number); for (int i = 0; i < arrays.length; i++) { if (i == number) { texts.get(i).setText('地鼠'); } else { texts.get(i).setText(''); } } handler.sendEmptyMessageDelayed(0, 500); return false; } }); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); text11 = (TextView) findViewById(R.id.text11); text12 = (TextView) findViewById(R.id.text12); text13 = (TextView) findViewById(R.id.text13); text21 = (TextView) findViewById(R.id.text21); text22 = (TextView) findViewById(R.id.text22); text23 = (TextView) findViewById(R.id.text23); text31 = (TextView) findViewById(R.id.text31); text32 = (TextView) findViewById(R.id.text32); text33 = (TextView) findViewById(R.id.text33); texts = new ArrayList<TextView>(); for (int i = 0; i < arrays.length; i++) { texts.add(text11); texts.add(text12); texts.add(text13); texts.add(text21); texts.add(text22); texts.add(text23); texts.add(text31); texts.add(text32); texts.add(text33); } for (TextView text : texts) { text.setOnClickListener(this); } } public void start(View v) { TimerTask task = new TimerTask() { @Override public void run() { handler.sendEmptyMessage(0); } }; Timer timer = new Timer(); timer.schedule(task, 500); } public void end(View v) { handler.removeMessages(0); } @Override public void onClick(View v) { // TODO Auto-generated method stub switch (v.getId()) { case R.id.text11: if (number == 0) { Toast.makeText(this, '打中地鼠了!。。。', 1).show(); handler.removeMessages(0); } break; case R.id.text12: if (number == 1) { Toast.makeText(this, '打中地鼠了!。。。', 1).show(); handler.removeMessages(0); } break; case R.id.text13: if (number == 2) { Toast.makeText(this, '打中地鼠了!。。。', 1).show(); handler.removeMessages(0); } break; case R.id.text21: if (number == 3) { Toast.makeText(this, '打中地鼠了!。。。', 1).show(); handler.removeMessages(0); } break; case R.id.text22: if (number == 4) { Toast.makeText(this, '打中地鼠了!。。。', 1).show(); handler.removeMessages(0); } break; case R.id.text23: if (number == 5) { Toast.makeText(this, '打中地鼠了!。。。', 1).show(); handler.removeMessages(0); } break; case R.id.text31: if (number == 6) { Toast.makeText(this, '打中地鼠了!。。。', 1).show(); handler.removeMessages(0); } break; case R.id.text32: if (number == 7) { Toast.makeText(this, '打中地鼠了!。。。', 1).show(); handler.removeMessages(0); } break; case R.id.text33: if (number == 8) { Toast.makeText(this, '打中地鼠了!。。。', 1).show(); handler.removeMessages(0); } break; default: break; } } @Override protected void onDestroy() { // TODO Auto-generated method stub super.onDestroy(); player.release(); }}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Android
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日本aⅴ免费视频一区二区三区| 91tv亚洲精品香蕉国产一区| 肉色欧美久久久久久久免费看| 日韩精品一区第一页| 国产精品美女久久久| 亚洲一区二区动漫| 国产亚洲一区在线| 日本视频在线一区| 麻豆视频一区二区| 女生影院久久| 成人在线丰满少妇av| 青青久久av| 红桃视频国产精品| 久久亚洲风情| 国产欧美日韩精品一区二区三区| 亚洲字幕久久| 亚洲综合福利| 久久久久黄色| 欧美精品一区二区久久| 日韩中文字幕亚洲一区二区va在线| 亚洲精品一级| 美女国产一区二区三区| 午夜精品成人av| 欧美成人国产| 日韩欧美久久| 亚洲精品看片| 久久97久久97精品免视看秋霞| 高清av一区| 香蕉精品视频在线观看| se01亚洲视频| 国产精品2区| 黄色欧美在线| 九九综合九九| 亚洲激情国产| 国产精品免费99久久久| 国产网站在线| 免费中文字幕日韩欧美| 国产日韩在线观看视频| 91精品国产自产在线观看永久∴| 首页亚洲欧美制服丝腿| 四虎成人精品一区二区免费网站 | 国产精品久一| 欧美成人午夜| 国产欧美久久一区二区三区| 久久高清免费| 国产精品欧美在线观看| 久久视频国产| 国产精品亚洲二区| 亚洲精品123区| 免费亚洲一区| 99国产精品视频免费观看一公开| 日韩av网站在线观看| 91精品精品| 国产精品久久久久久久免费软件| 国产黄大片在线观看| 亚洲午夜免费| 国产综合色区在线观看| 日韩精品成人在线观看| 香蕉精品久久| 精品丝袜久久| 日韩中文字幕一区二区高清99| 国产99在线| 国产精品丝袜在线播放| 国产精品免费看| 国产v日韩v欧美v| 欧美日韩伊人| 国产精品毛片| 播放一区二区| 精品国产一区二区三区2021| 亚洲国产专区| 国产一区福利| 欧美精品中文| 日韩一区二区三区在线看| 欧美午夜不卡影院在线观看完整版免费| 国产v日韩v欧美v| 欧美不卡视频| 国产成人精品一区二区免费看京| 日日摸夜夜添夜夜添国产精品| 欧美日韩精品在线一区| 精品香蕉视频| 精品少妇av| 国产伦精品一区二区三区在线播放 | 黄色欧美日韩| 色婷婷亚洲mv天堂mv在影片| 国产伦一区二区三区| 日本视频一区二区| 一级欧美视频| 欧美专区18| 激情综合网站| 久久精品99久久无色码中文字幕| 精品久久福利| 国产精品白丝久久av网站| 日本亚州欧洲精品不卡| 蜜臀91精品一区二区三区| 在线视频精品| 婷婷激情图片久久| 水蜜桃精品av一区二区| 久久久国产精品网站| 国产美女久久| 国产伦精品一区二区三区在线播放| 亚洲97av| 日本视频中文字幕一区二区三区| 亚久久调教视频| 日韩精品1区2区3区| 亚洲免费资源| 日韩精品中文字幕一区二区| 香蕉久久久久久久av网站| 美国三级日本三级久久99| 国产午夜久久| 在线看片一区| 日本亚洲欧洲无免费码在线| 久久久亚洲一区| 日本精品影院| 国产综合亚洲精品一区二| 波多野结衣一区| 在线日韩成人| 日韩不卡手机在线v区| 国产精品观看| 日韩av在线播放网址| 99久久久久国产精品| 欧美精品一区二区久久| 日韩一区精品字幕| 欧美在线日韩| 精品国产91| 99视频精品视频高清免费| 国产精品毛片一区二区三区| 夜夜精品视频| 日韩高清在线观看一区二区| 久久av中文| 激情偷拍久久| 日韩av中文在线观看| 成人台湾亚洲精品一区二区| 久久精品国产www456c0m| 亚洲影视一区| 国产一区二区三区黄网站 | 国产一区福利| 99国产精品99久久久久久粉嫩| 日韩一区二区三区在线看| 日本不卡一二三区黄网| 国产香蕉精品| 国产一区二区三区不卡视频网站| 久久久久亚洲| 日韩精品欧美精品| 精品国产欧美| 亚洲深夜福利| 国产精品网站在线看| 国产精品久久久久av电视剧| 久久夜色精品| 国产精品成人国产| 亚洲激情不卡| 国产亚洲一区二区三区不卡| 香蕉视频亚洲一级| 蜜臀av亚洲一区中文字幕| 欧美在线精品一区| av在线最新| 亚洲毛片在线| 久久久久.com| 亚洲综合中文| 性欧美videohd高精| 日韩1区2区3区| 久久一区二区中文字幕| 日本不卡视频在线观看| 深夜视频一区二区| 婷婷综合电影| 99精品在线观看| 国产欧美一区二区三区精品观看 | 理论片午夜视频在线观看| 午夜在线精品| 成人免费电影网址| 欧美亚洲一区二区三区| 在线亚洲国产精品网站| 精品国产欧美日韩一区二区三区| 天堂va蜜桃一区二区三区| 精品在线网站观看| 丝袜亚洲精品中文字幕一区| аⅴ资源天堂资源库在线| 日韩avvvv在线播放| 不卡一区2区| 成人精品国产亚洲| 欧美日韩一视频区二区| 蜜臀久久久久久久| 亚洲人成在线网站| 国产精品一国产精品k频道56| 快she精品国产999| 欧美久久精品一级c片| bbw在线视频| 精品国产日韩欧美精品国产欧美日韩一区二区三区| 蜜桃视频欧美| 国产欧美日韩亚洲一区二区三区| 国产videos久久| 欧美日韩在线精品一区二区三区激情综合 | 久久精品国产网站| 国产亚洲福利| 亚洲精品网址| 福利在线免费视频| 高清一区二区| 国产精品蜜芽在线观看| 国产a久久精品一区二区三区| 午夜亚洲福利| 日日摸夜夜添夜夜添国产精品|