Android实现微信摇骰子游戏

过年怎么可以不玩红包娱乐一下呢,微信里的摇骰子大小和石头剪刀布就是不错的游戏方式。

使用Java的Random函数很容易实现,以骰子为例:

1.骰子摇动的动画,使用animation-list帧动画实现2.生成1~6的随机数,1 + new Random().nextInt(6)

以下是代码实现,文末提供图片资源下载:

package com.zms.dicedemo;  import java.util.Random;  import android.app.Activity; import android.graphics.drawable.Drawable; 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 Activity {   private ImageView imageDice;  private Button btnGo;   @Override  protected void onCreate(Bundle savedInstanceState) {   super.onCreate(savedInstanceState);   setContentView(R.layout.activity_main);    initialLayout();  }   private void initialLayout() {   imageDice = (ImageView) findViewById(R.id.imageDice);    btnGo = (Button) findViewById(R.id.btnGo);   btnGo.setOnClickListener(new MyOnClickListener());   }   class MyOnClickListener implements View.OnClickListener {    @Override   public void onClick(View v) {    switch (v.getId()) {    case R.id.btnGo:     imageDice.setImageDrawable(getResources().getDrawable(       R.drawable.anim_dice));     new Thread(new DiceThread()).start();     break;     default:     break;    }    }  }   public class DiceThread implements Runnable {    @Override   public void run() {    try {     Thread.sleep(2000);    } catch (InterruptedException e) {     e.printStackTrace();    }     Message messageDice = new Message();    messageDice.what = 1;    diceHandler.sendMessage(messageDice);    }   }   private void resetDiceImage() {   int randomInt = 1 + new Random().nextInt(6); // 1~6   Toast.makeText(MainActivity.this, getChineseByNumber(randomInt),     Toast.LENGTH_SHORT).show();   imageDice.setImageDrawable(getResources().getDrawable(     getResources().getIdentifier("dice_" + randomInt, "drawable",       getPackageName())));  }   private String getChineseByNumber(int number) {   switch (number) {   case 1:    return "一点小";    case 2:    return "二点小";    case 3:    return "三点小";    case 4:    return "四点大";    case 5:    return "五点大";    case 6:    return "六点大";    default:    return "";   }  }   final Handler diceHandler = new Handler() {    public void handleMessage(android.os.Message msg) {    switch (msg.what) {    case 1:     resetDiceImage();     break;     default:     break;    }   }   }; } 

Random生成的虽然是伪随机数,但是在娱乐对安全性要求不高,还是可以使用的。

实现方式比较简单,以下是工程下载链接:Android微信摇骰子

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

可以提高你的水平。(戏从对手来。

Android实现微信摇骰子游戏

相关文章:

你感兴趣的文章:

标签云: