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

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

Android實現擲骰子效果

瀏覽:30日期:2022-09-24 10:27:29

本文實例為大家分享了Android實現擲骰子效果的具體代碼,供大家參考,具體內容如下

利用handler接受子線程的消息完成骰子點數的不斷更替

演示

START:開始游戲STOP:停止游戲RECOVER:重置色子到初始狀態

Android實現擲骰子效果

代碼

package com.example.homeworkten;import androidx.annotation.NonNull;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;import android.os.Handler;import android.os.Message;import android.view.View;import android.widget.Button;import android.widget.ImageView;import android.widget.Toast;public class MainActivity extends AppCompatActivity { private ImageView imageView1,imageView2,imageView3; private Button button1,button2,button3; private ImageView[] imageViews; private Handler handler; //子線程 private Thread thread; //記錄每個色子的點數 private int number[]; //色子的總點數 private int count; //volatile修飾符用來保證其它線程讀取的總是該變量的最新的值 public volatile boolean isStop = false; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); number = new int[3]; imageView1 = findViewById(R.id.imageView1); imageView2 = findViewById(R.id.imageView2); imageView3 = findViewById(R.id.imageView3); button1 = findViewById(R.id.button1); button2 = findViewById(R.id.button2); button3 = findViewById(R.id.button3); imageViews = new ImageView[]{imageView1,imageView2,imageView3}; button1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //判斷線程是否存在 if (thread != null&&isStop == true){ isStop = false; } handler = new Handler(){ @Override public void handleMessage(@NonNull Message msg) { super.handleMessage(msg); for(int i = 0;i < 3;i++) { switch (number[i]) { case 1: imageViews[i].setImageResource(R.drawable.t1); break; case 2: imageViews[i].setImageResource(R.drawable.t2); break; case 3: imageViews[i].setImageResource(R.drawable.t3); break; case 4: imageViews[i].setImageResource(R.drawable.t4); break; case 5: imageViews[i].setImageResource(R.drawable.t5); break; case 6: imageViews[i].setImageResource(R.drawable.t6); break; } } } }; thread = new Thread(new Runnable() { @Override public void run() { while (!isStop) { Message message = handler.obtainMessage(); //總點數歸零 count = 0; for (int i = 0; i < 3; i++) { try { Thread.sleep(50); } catch (InterruptedException e) { e.printStackTrace(); } //生成隨機數 int random = (int) (Math.random() * 6 + 1); number[i] = random; count += random; } handler.sendMessage(message); } } }); thread.start(); } }); //停止擲篩子 button2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if(isStop == false) { isStop = true; try { //當子線程執行完以后才繼續執行主線程 thread.join(); } catch (InterruptedException e) { e.printStackTrace(); } //顯示擲出的點數 Toast.makeText(MainActivity.this, '你擲的點數為' + count, Toast.LENGTH_SHORT).show(); }else { Toast.makeText(MainActivity.this, '請點擊開始鍵進行擲色子', Toast.LENGTH_SHORT).show(); } } }); //將色子還原到初始狀態 button3.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if(isStop == true) { for (int i = 0; i < 3; i++) { imageViews[i].setImageResource(R.drawable.t1); } }else { Toast.makeText(MainActivity.this, '請先停止游戲,再重新開始', Toast.LENGTH_SHORT).show(); } } }); }}

<?xml version='1.0' encoding='utf-8'?><androidx.constraintlayout.widget.ConstraintLayout xmlns:android='http://schemas.android.com/apk/res/android' xmlns:app='http://schemas.android.com/apk/res-auto' xmlns:tools='http://schemas.android.com/tools' android:layout_width='match_parent' android:layout_height='match_parent' tools:context='.MainActivity'> <ImageView android: android:layout_width='100dp' android:layout_height='80dp' android:layout_marginStart='10dp' android:layout_marginLeft='10dp' android:layout_marginTop='40dp' android:layout_marginEnd='10dp' android:layout_marginRight='10dp' app:layout_constraintEnd_toStartOf='@+id/imageView2' app:layout_constraintHorizontal_bias='0.482' app:layout_constraintStart_toStartOf='parent' app:layout_constraintTop_toTopOf='parent' app:srcCompat='@drawable/t1' /> <ImageView android: android:layout_width='100dp' android:layout_height='80dp' android:layout_marginStart='10dp' android:layout_marginLeft='10dp' android:layout_marginTop='40dp' android:layout_marginEnd='10dp' android:layout_marginRight='10dp' app:layout_constraintEnd_toStartOf='@+id/imageView3' app:layout_constraintStart_toEndOf='@+id/imageView1' app:layout_constraintTop_toTopOf='parent' app:srcCompat='@drawable/t1' /> <Button android: android:layout_width='wrap_content' android:layout_height='wrap_content' android:layout_marginStart='10dp' android:layout_marginLeft='10dp' android:layout_marginTop='40dp' android:layout_marginEnd='10dp' android:layout_marginRight='10dp' android:text='start' app:layout_constraintEnd_toStartOf='@+id/button2' app:layout_constraintStart_toStartOf='parent' app:layout_constraintTop_toBottomOf='@+id/imageView1' /> <Button android: android:layout_width='wrap_content' android:layout_height='wrap_content' android:layout_marginStart='10dp' android:layout_marginLeft='10dp' android:layout_marginTop='40dp' android:layout_marginEnd='10dp' android:layout_marginRight='10dp' android:text='stop' app:layout_constraintEnd_toStartOf='@+id/button3' app:layout_constraintStart_toEndOf='@+id/button1' app:layout_constraintTop_toBottomOf='@+id/imageView2' /> <Button android: android:layout_width='wrap_content' android:layout_height='wrap_content' android:layout_marginStart='10dp' android:layout_marginLeft='10dp' android:layout_marginTop='40dp' android:layout_marginEnd='10dp' android:layout_marginRight='10dp' android:text='recover' app:layout_constraintEnd_toEndOf='parent' app:layout_constraintStart_toEndOf='@+id/button2' app:layout_constraintTop_toBottomOf='@+id/imageView3' /> <ImageView android: android:layout_width='100dp' android:layout_height='80dp' android:layout_marginStart='10dp' android:layout_marginLeft='10dp' android:layout_marginTop='40dp' android:layout_marginEnd='10dp' android:layout_marginRight='10dp' app:layout_constraintEnd_toEndOf='parent' app:layout_constraintStart_toEndOf='@+id/imageView2' app:layout_constraintTop_toTopOf='parent' app:srcCompat='@drawable/t1' /></androidx.constraintlayout.widget.ConstraintLayout>

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

標簽: Android
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
999久久久91| 国产成人精品999在线观看| 国产成人调教视频在线观看| 国产亚洲精品精品国产亚洲综合| 亚洲日本久久| 综合视频一区| 蜜桃传媒麻豆第一区在线观看| 丝袜国产日韩另类美女| 亚洲网址在线观看| 日韩福利视频网| 欧美日韩一区二区三区不卡视频 | 老牛影视精品| 日本韩国欧美超级黄在线观看| av亚洲一区二区三区| 久久精品不卡| 国产精品毛片| 最新国产精品视频| 日本麻豆一区二区三区视频| 国产精品亚洲片在线播放| 精品久久亚洲| 亚洲一级特黄| 亚洲专区在线| 69堂免费精品视频在线播放| 日韩不卡免费视频| 精品在线网站观看| 久久伦理在线| 亚洲香蕉久久| 麻豆一区二区99久久久久| 在线一区视频观看| 久久国产精品99国产| 久久国产生活片100| 成人精品久久| aⅴ色国产欧美| 日韩动漫一区| 首页国产精品| 亚洲主播在线| 日本午夜精品久久久| 精品国产鲁一鲁****| 91精品一区国产高清在线gif| 性色一区二区| 国产精品高清一区二区| 日韩中文影院| 视频一区二区三区入口| 国产精选久久| 欧美成人a交片免费看| 日韩视频二区| 欧美国产中文高清| 国产综合精品一区| 国产丝袜一区| 国产精品av久久久久久麻豆网| 涩涩涩久久久成人精品| 国产精品一区亚洲| 91精品国产自产在线观看永久∴| 石原莉奈在线亚洲二区| 久久中文在线| 日韩午夜高潮| 久久福利在线| 99国产精品| 精品三区视频| 久久精品国产亚洲夜色av网站| 日韩精品国产精品| 亚洲天堂1区| 国产情侣一区在线| 香蕉久久精品| 国产欧美二区| 亚洲国内精品| 国产精品亚洲欧美| 久久亚洲欧洲| 日本欧美国产| 亚欧成人精品| 欧美精选一区二区三区| 久久在线91| 天堂va欧美ⅴa亚洲va一国产| 四虎884aa成人精品最新| 国产精品久一| 亚洲伊人影院| 999国产精品| 精品成av人一区二区三区| 亚洲专区视频| 日韩视频在线一区二区三区 | 美女尤物久久精品| 国产suv精品一区二区四区视频| 亚洲精品高潮| 欧美成人综合| 午夜影院一区| 精品中国亚洲| 国产精品久久久久久久久久齐齐 | 国产精品一区二区三区美女| 亚洲中字黄色| 久久国产免费| 久久69成人| 奇米色欧美一区二区三区| 国产亚洲在线观看| 亚洲va在线| 六月婷婷综合| 欧美成人一二区| 91精品国产自产在线丝袜啪| 男女精品网站| 亚洲免费高清| 极品裸体白嫩激情啪啪国产精品| 欧美激情另类| 国内在线观看一区二区三区 | 精品视频99| 欧美精品导航| 国产精品中文| 777久久精品| 青草av.久久免费一区| 日本亚洲视频在线| 亚洲精品乱码日韩| 在线看片日韩| 在线看片一区| 亚洲人成网站在线在线观看| 首页国产欧美久久| 六月天综合网| 免费的成人av| 蜜臀a∨国产成人精品| 石原莉奈在线亚洲三区| 伊人久久成人| 午夜精品婷婷| 国产亚洲精品v| 性欧美精品高清| 中文不卡在线| 日韩精彩视频在线观看| 欧美一级二级视频| 国产欧美亚洲一区| 久久99精品久久久野外观看| 久久一区精品| 日本а中文在线天堂| 久久国产小视频| 精品91久久久久| 欧美专区一区二区三区| 免费高清在线一区| 亚洲综合中文| 日韩av一区二区三区四区| 91精品国产经典在线观看| 国产日韩一区二区三区在线播放| 国产精品大片| 国产粉嫩在线观看| 在线日韩电影| 人人爽香蕉精品| 日韩国产成人精品| 国产精品极品国产中出| 精品视频一区二区三区四区五区 | 日本久久二区| 国产乱码精品一区二区亚洲| 精品一区视频| 欧美日一区二区| 蜜桃av一区二区| 国产精品a久久久久| 成人亚洲一区| 好吊视频一区二区三区四区| 亚洲一区二区三区在线免费| 国产日韩视频| 伊伊综合在线| 国产精品人人爽人人做我的可爱 | 国产视频久久| 日韩国产在线不卡视频| 久久精品三级| 99久久婷婷| 日韩一区网站| 国产不卡一区| 亚洲欧美日韩专区| 国产精品久久免费视频| 欧洲亚洲一区二区三区| 亚洲一区二区三区中文字幕在线观看| 国产欧美啪啪| 久久一区二区三区喷水| 日韩三级视频| 欧美丰满日韩| 亚洲久草在线| 福利一区和二区| 日韩一级不卡| 国产女人18毛片水真多18精品| 天堂а√在线最新版中文在线| 99亚洲精品| 国产精品啊v在线| 欧美日韩水蜜桃| 欧美日韩亚洲一区| 欧美日韩视频网站| 蜜桃传媒麻豆第一区在线观看| 麻豆精品新av中文字幕| 婷婷色综合网| 久久精品国产99国产精品| 日韩午夜免费| 精品国产aⅴ| 久久亚洲精品伦理| 精品欧美日韩精品| 丝袜美腿亚洲色图| 成人在线视频免费看| 亚州av日韩av| 日韩精品91| 日本不卡一区二区| 欧美va天堂| 国产999精品在线观看| 在线日韩成人| 99精品视频在线观看免费播放| 日本成人中文字幕| 欧美日韩免费观看一区=区三区| 久久精品国产99国产| 日韩美女国产精品|