最常见的猜拳小游戏Android代码实现

本文实例为大家分享了Android猜拳小游戏,供大家参考,具体内容如下

简单的 页面跳转 和 点击事件 的实现...

--> AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
 package="com.dragon.android.fight"
 android:versionCode="1"
 android:versionName="1.0" >

 <uses-sdk
  android:minSdkVersion="15"
  android:targetSdkVersion="19" />

 <application
  android:allowBackup="true"
  android:icon="@drawable/ic_launcher"
  android:label="@string/app_name"
  android:theme="@style/AppTheme" >
  <activity
   android:name="com.dragon.android.fight.MainActivity"
   android:label="@string/app_name" >
   <intent-filter>
    <action android:name="android.intent.action.MAIN" />

    <category android:name="android.intent.category.LAUNCHER" />
   </intent-filter>
  </activity>
  <activity
   android:name="com.dragon.android.fight.OtherActivity">
  </activity>
 </application>

</manifest>

AndroidManifest

--> strings.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>

 <string name="app_name">fight</string>
 <string name="hello_world">Hello world!</string>
 <string name="action_settings">Settings</string>
 <string name="player1">甲方</string>
 <string name="player2">乙方</string>
 <string name="choose1">石头</string>
 <string name="choose2">剪刀</string>
 <string name="choose3">布</string>
 <string name="sure">出拳</string>
 <string name="again">再来一局</string>

</resources>

--> fragment_main.xml
<RelativeLayout 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:background="#ffffff"
 tools:context="com.dragon.android.fight.MainActivity$PlaceholderFragment" >

 <TextView
  android:id="@+id/textView1"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_alignParentTop="true"
  android:layout_centerHorizontal="true"
  android:layout_marginTop="36dp"
  android:text="@string/player1"
  android:textSize="30sp" />

 <RadioGroup
  android:id="@+id/radioGroup1"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_centerHorizontal="true"
  android:layout_centerVertical="true" >

  <RadioButton
   android:id="@+id/radio0"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:checked="true"
   android:text="@string/choose1" />

  <RadioButton
   android:id="@+id/radio1"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="@string/choose2" />

  <RadioButton
   android:id="@+id/radio2"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="@string/choose3" />
 </RadioGroup>

 <Button
  android:id="@+id/button1"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_alignLeft="@+id/radioGroup1"
  android:layout_below="@+id/radioGroup1"
  android:layout_marginTop="14dp"
  android:text="@string/sure" />

 <ImageView
  android:id="@+id/imageView1"
  android:layout_width="120dp"
  android:layout_height="120dp"
  android:layout_above="@+id/radioGroup1"
  android:layout_below="@+id/textView1"
  android:layout_centerHorizontal="true"
  android:src="@drawable/b" />

</RelativeLayout>

--> activity_other.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:orientation="vertical"
 android:background="#ffffff" >

 <TextView
  android:id="@+id/textView1"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_alignParentTop="true"
  android:layout_centerHorizontal="true"
  android:layout_marginTop="36dp"
  android:text="@string/player2"
  android:textSize="30sp" />

 <RadioGroup
  android:id="@+id/radioGroup1"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_centerHorizontal="true"
  android:layout_centerVertical="true" >

  <RadioButton
   android:id="@+id/radio0"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:checked="true"
   android:text="@string/choose1" />

  <RadioButton
   android:id="@+id/radio1"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="@string/choose2" />

  <RadioButton
   android:id="@+id/radio2"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="@string/choose3" />
 </RadioGroup>

 <Button
  android:id="@+id/button1"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_alignLeft="@+id/radioGroup1"
  android:layout_below="@+id/radioGroup1"
  android:layout_marginTop="14dp"
  android:text="@string/sure" />

 <TextView
  android:id="@+id/textView2"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_alignLeft="@+id/textView1"
  android:layout_below="@+id/button1"
  android:visibility="invisible"
  android:layout_marginTop="14dp"/>

 <Button
  android:id="@+id/button2"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_below="@+id/textView2"
  android:layout_centerHorizontal="true"
  android:visibility="invisible"
  android:text="@string/again" />

 <ImageView
  android:id="@+id/imageView1"
  android:layout_width="120dp"
  android:layout_height="120dp"
  android:layout_above="@+id/radioGroup1"
  android:layout_below="@+id/textView1"
  android:layout_centerHorizontal="true"
  android:src="@drawable/a" />

</RelativeLayout>

--> MainActivity

package com.dragon.android.fight;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.RadioButton;
import android.widget.RadioGroup;

public class MainActivity extends Activity {
 // 设置一个静态变量,用于关闭Activity
 public static MainActivity instance = null;
 private RadioGroup radioGroup1;
 private Button button1;
 private ImageView imageView1;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
 // 代表当前的Activity
 instance = this;
 super.onCreate(savedInstanceState);
 setContentView(R.layout.fragment_main);
 radioGroup1 = (RadioGroup) findViewById(R.id.radioGroup1);
 // 设置图片透明
 // imageView1 = (ImageView) findViewById(R.id.imageView1);
 // imageView1.getBackground().setAlpha(100);
 button1 = (Button) findViewById(R.id.button1);
 button1.setOnClickListener(new MyButtonListener());
 }

 class MyButtonListener implements OnClickListener {

 @Override
 public void onClick(View v) {
  // 得到选中的RadioButton
  RadioButton radioButton = (RadioButton) findViewById(radioGroup1
   .getCheckedRadioButtonId());
  String radioText = radioButton.getText().toString();
  Intent intent = new Intent();
  intent.putExtra("checked", radioText);
  intent.setClass(MainActivity.this, OtherActivity.class);
  startActivity(intent);
 }
 }
}

--> OtherActivity

package com.dragon.android.fight;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;

public class OtherActivity extends Activity {
 private RadioGroup radioGroup1;
 private Button button1;
 private TextView textView2;
 private RadioButton radioButton;
 private Button button2;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_other);
 radioGroup1 = (RadioGroup) findViewById(R.id.radioGroup1);
 button1 = (Button) findViewById(R.id.button1);
 textView2 = (TextView) findViewById(R.id.textView2);
 button2 = (Button) findViewById(R.id.button2);
 button1.setOnClickListener(new MyButtonListener());
 button2.setOnClickListener(new MyButtonListener1());
 }

 class MyButtonListener implements OnClickListener {

 @Override
 public void onClick(View v) {
  radioButton = (RadioButton) findViewById(radioGroup1
   .getCheckedRadioButtonId());
  String buttonText = radioButton.getText().toString();
  Intent intent = getIntent();
  String checked = intent.getStringExtra("checked");
  // 设置View为可见
  textView2.setVisibility(View.VISIBLE);
  button2.setVisibility(View.VISIBLE);
  String msg = "甲出:" + checked + "\n" + "乙出:" + buttonText
   + "\n";
  if (buttonText.equals(checked)) {
  textView2.setText(msg + "平局");
  }
  if (buttonText.equals("石头")) {
  if (checked.equals("剪刀")) {
   textView2.setText(msg + "乙方赢");
  } else if (checked.equals("布")) {
   textView2.setText(msg + "甲方赢");
  }
  }
  if (buttonText.equals("剪刀")) {
  if (checked.equals("布")) {
   textView2.setText(msg + "乙方赢");
  } else if (checked.equals("石头")) {
   textView2.setText(msg + "甲方赢");
  }
  }
  if (buttonText.equals("布")) {
  if (checked.equals("石头")) {
   textView2.setText(msg + "乙方赢");
  } else if (checked.equals("剪刀")) {
   textView2.setText(msg + "甲方赢");
  }
  }
 }
 }

 class MyButtonListener1 implements OnClickListener {

 @Override
 public void onClick(View arg0) {
  Intent intent = new Intent();
  intent.setClass(OtherActivity.this, MainActivity.class);
  finish();
  // 关闭指定Activity
  MainActivity.instance.finish();
  startActivity(intent);
 }
 }
}

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

(0)

相关推荐

  • js和html5实现手机端刮刮卡抽奖效果完美兼容android/IOS

    绝对值得看的来篇,哈哈.本人亲自完成,有错误请大家指出: 现在的手机完美支持html5,所以如果手机端想要做个抽奖模块的话,用刮刮卡抽奖效果,相信这个互动体验是非常棒的 ​ps:由于本人没有wp8系统的手机,所以没法兼容wp8系统的,目前完美兼容android,IOS 如果要在pc浏览的话,得改下js,目前支持谷歌,火狐,ie>=10,如果网友想要的话我就去写个 代码如下: 复制代码 代码如下: <!DOCTYPE html> <html lang="en"&g

  • 基于Android自定义控件实现刮刮乐效果

    只是简单的实现了效果,界面没怎么做优化,不过那都是次要的啦!!相信大家都迫不及待的想看效果图了吧, 其中主要的彩票视图类和橡皮擦类都是通过代码的方式构建视图,布局文件就一个主activity_main 上代码!! 主activity: package com.guaguale; import android.app.Activity; import android.os.Bundle; import android.view.Menu; import android.view.View; imp

  • Android实现抽奖转盘实例代码

    本文详述了android抽奖程序的实现方法,程序为一个抽奖大转盘代码,里面定义了很多图形方法和动画. 实现主要功能的SlyderView.java源代码如下: import android.app.Activity; import android.content.Context; import android.graphics.BlurMaskFilter; import android.graphics.Canvas; import android.graphics.Color; import

  • Android中利用SurfaceView制作抽奖转盘的全流程攻略

    一.概述 今天给大家带来SurfaceView的一个实战案例,话说自定义View也是各种写,一直没有写过SurfaceView,这个玩意是什么东西?什么时候用比较好呢? 可以看到SurfaceView也是继承了View,但是我们并不需要去实现它的draw方法来绘制自己,为什么呢? 因为它和View有一个很大的区别,View在UI线程去更新自己:而SurfaceView则在一个子线程中去更新自己:这也显示出了它的优势,当制作游戏等需要不断刷新View时,因为是在子线程,避免了对UI线程的阻塞. 知

  • Android简单实现圆盘抽奖界面

    闲来无事,做了一个简单的抽奖转盘的ui实现,供大家参考 package com.microchange.lucky; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.graphics.RectF; import android.util.AttributeSet;

  • 轻松实现功能强大的Android刮奖效果控件(ScratchView)

    前言 我身边有一部分开发的小伙伴,存在着这样一种习惯.某一天,突然看到某一款 App 上有个很漂亮的自定义控件(动画)效果,就会绞尽脑子想办法去自己实现一发.当然,我自己也是属于这类型的骚年,看到某种效果就会手痒难耐琢磨着实现套路.个人觉得这是一种需求驱动进步的方法,当你绞尽脑子去实现自己想要的效果时,你就会发现你对 Android 自定义控件(动画)的知识体系认识越深,久而久之,自己也能轻松的造出各种控件(动画)效果.要是哪天,产品童鞋拿着个原型(或者对着某款 App )跟你讲:"XXXX,你

  • 直接拿来用的Android刮奖控件

    直接上效果图 功能特色:  1.可以设置刮开后显示文字或图片  2.可以统计已刮开区域所占百分比 Demo下载地址:RubberDemo.rar 下面是源码: @SuppressLint("HandlerLeak") public class RubberView extends TextView { private static final int W = 480; private static final int H = 800; private static final int

  • Android App中实现简单的刮刮卡抽奖效果的实例详解

    主要思想: 将一个view设计成多层:背景层,含中奖信息等: 遮盖层,用于刮奖,使用关联一个Bitmap的Canvas 在该Bitmap上,使用它的canvas.drawPath的api来处理 手势滑动(类似刮奖的动作) 使用paint.setXfermode 来进行消除手势滑动区域 public class GuaView extends View { private Bitmap mBitmap; //遮盖的图层 private Canvas mCanvas; //绘制遮盖图层 privat

  • Android刮刮卡实现原理与代码讲解

    实现刮刮卡我们可以Get到哪些技能? * 圆形圆角图片的实现原理 * 双缓冲技术绘图 * Bitmap获取像素值数据 * 获取绘制文本的长宽 * 自定义View的掌握 * 获取屏幕密度 * TypeValue.applyDemension * Canvas的一些绘制方法 * Paint的一些常用的属性 * Path的一些方法 刮刮卡的实现原理图 这里用到了13中模式中的DstOut这种模式. 对于这幅图而言,首先绘制Dst,设置xfermode,再绘制Src. 刮刮卡的实现原理步骤 1.绘制显示

  • 分享Android仿刮奖效果控件

    本文实例为大家分享了Android刮刮卡效果控件,供大家参考,具体内容如下 刮刮卡类: package com.reyo.view; import android.content.Context; import android.graphics.Bitmap; import android.graphics.Bitmap.Config; import android.graphics.Canvas; import android.graphics.Paint; import android.gr

随机推荐