您的位置:首页 > 其它

完成猜拳小游戏

2013-04-14 10:53 369 查看
猜拳小游戏的布局:actity_main.xml

<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"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/choose" />

<RadioGroup
android:id="@+id/fist"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal" >

<RadioButton
android:id="@+id/stone"
android:layout_width="wrap_content"
android:layout_height="wrap_content"

android:text="@string/stone" />

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

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

<Button
android:id="@+id/punch"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/punch" />

</LinearLayout>

actity_show.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:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".ShowActivity" >

<TextView
android:id="@+id/result"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>

</RelativeLayout>


MainActivity.java代码:

package com.example.game;

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

public class MainActivity extends Activity {
private RadioGroup fist;//单选按钮组
private RadioButton stone, scissors, cloth;//单选按钮石头,剪刀,布
private Button punch;//按钮出拳
int playerFist;//定义为整型,好计较输赢,玩家出拳
String chuquan;//显示字符串

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
fist = (RadioGroup) this.findViewById(R.id.fist);//取得主键
stone = (RadioButton) this.findViewById(R.id.stone);
scissors = (RadioButton) this.findViewById(R.id.scissors);
cloth = (RadioButton) this.findViewById(R.id.cloth);
fist.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {

@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
// TODO Auto-generated method stub
if (checkedId == stone.getId()) {
playerFist=2;
chuquan="玩家:石头";

}
if (checkedId == scissors.getId()) {
playerFist=1;
chuquan="玩家:剪刀";
}
if (checkedId == cloth.getId()) {
playerFist=3;
chuquan="玩家:布";

}

}
});

punch = (Button) this.findViewById(R.id.punch);
punch.setOnClickListener(new Button.OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent = new Intent();//页面跳转
intent.setClass(MainActivity.this, ShowActivity.class);
Bundle bundle=new Bundle();
bundle.putInt("playerFist", playerFist);//bundle 放数据
bundle.putString("chuquan", chuquan);
intent.putExtras(bundle);
startActivity(intent);
finish();

}
});
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

}


ShowActity.java代码:

package com.example.game;

import android.os.Bundle;
import android.app.Activity;

import android.view.Menu;
import android.widget.TextView;

public class ShowActivity extends Activity {

private TextView result;//显示结果
public int playerFist;
public String chuquan;//玩家出拳
public String strquan;//显示电脑出拳

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_show);
result=(TextView) this.findViewById(R.id.result);
Bundle bundle=this.getIntent().getExtras();
playerFist=bundle.getInt("playerFist");
chuquan=bundle.getString("chuquan");
int comFist = (int) (Math.random() * 10) % 3 + 1;// 产生随机数,表示电脑出拳
switch(comFist){
case 1:{
strquan="电脑:剪刀";
break;
}
case 2:{
strquan="电脑:石头";
break;
}
case 3:{
strquan="电脑:布";
break;
}

}
//比较输赢
if(playerFist==1&&comFist==1||playerFist==2&&comFist==2||playerFist==3&&comFist==3){
result.setText(chuquan+"VS"+strquan+"\n"+"平局");
}
else if(playerFist==1&&comFist==3||playerFist==2&&comFist==1||playerFist==3&&comFist==2){
result.setText(chuquan+"VS"+strquan+"\n"+"玩家赢");
}
else{
result.setText(chuquan+"VS"+strquan+"\n"+"电脑赢");
}
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.show, menu);
return true;

}
}

结果:


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: