Android开发的猜拳游戏:


1、XML实现的主UI界面代码

在这里也可以用线性布局来实现,总体为水平线性布局,中间的部分用垂直线性布局

后面两个按钮也可以用垂直线性布局!

                                                              

2、主界面的java代码

package com.Jackson.game;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.Menu;import android.view.MenuItem;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.CompoundButton;import android.widget.CompoundButton.OnCheckedChangeListener;import android.widget.ImageView;import android.widget.RadioButton;import android.widget.RadioGroup;import android.widget.TextView;public class Caiquan extends Activity { private RadioGroup radioGroup1,radioGroup;     private RadioButton shitouButton1,buButton1,jiandaoButton1;     private RadioButton jiandaoButton,buButton,shitouButton;     private Button button1,button2;     private TextView textview1,textview;     private ImageView imageview;     private ImageView imageview1;    @Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_caiquan);textview1=(TextView)findViewById(R.id.textView1);textview=(TextView)findViewById(R.id.game);button1 = (Button) findViewById(R.id.button1);button2 = (Button) findViewById(R.id.button2);button1.setOnClickListener(new ButtonListener());button2.setOnClickListener(new ButtonListener());radioGroup=(RadioGroup)findViewById(R.id.radioGroupId);radioGroup1=(RadioGroup)findViewById(R.id.radioGroupId1);shitouButton1=(RadioButton)findViewById(R.id.radioButton1);buButton1=(RadioButton)findViewById(R.id.radioButton3);jiandaoButton1=(RadioButton)findViewById(R.id.radioButton5);jiandaoButton=(RadioButton)findViewById(R.id.radioButton2);shitouButton=(RadioButton)findViewById(R.id.radioButton4);buButton=(RadioButton)findViewById(R.id.radioButton6);RadioButtonListener Radiolistener = new RadioButtonListener();shitouButton1.setOnCheckedChangeListener(Radiolistener);buButton1.setOnCheckedChangeListener(Radiolistener);jiandaoButton1.setOnCheckedChangeListener(Radiolistener);jiandaoButton.setOnCheckedChangeListener(Radiolistener);shitouButton.setOnCheckedChangeListener(Radiolistener);buButton.setOnCheckedChangeListener(Radiolistener);imageview1 = (ImageView) findViewById(R.id.imageView1);imageview = (ImageView) findViewById(R.id.imageView2);   //在这里也可以为findViewById方法和绑定监听器设置两个方法}class RadioButtonListener implements  OnCheckedChangeListener{public void onCheckedChanged(CompoundButton buttonView,boolean isChecked) {System.out.println("is Checkede---->"  +isChecked);}}class ButtonListener implements OnClickListener{@Overridepublic void onClick(View v) {RadioButton radioButtonleft = (RadioButton) findViewById(radioGroup1   .getCheckedRadioButtonId()); String radioTextleft = radioButtonleft.getText().toString();RadioButton radioButtonright = (RadioButton) findViewById(radioGroup   .getCheckedRadioButtonId());String radioTextright = radioButtonright.getText().toString();Intent intent= new Intent();intent.setClass(Caiquan.this, Next.class);
//用radioText记录被选中的单选按钮的值,传达到下一个Activityintent.putExtra("checkedleft", radioTextleft);intent.putExtra("checkedright", radioTextright);startActivity(intent);}}public boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.caiquany, menu);return true;}public boolean onOptionsItemSelected(MenuItem item) {// Handle action bar item clicks here. The action bar will// automatically handle clicks on the Home/Up button, so long// as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId();if (id == R.id.action_settings) {return true;}return false;}}

3、点击确定后跳转到的下一个界面

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

4、下一个界面对应的java代码

package com.Jackson.game;import android.app.Activity;import android.content.DialogInterface;import android.content.DialogInterface.OnClickListener;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.TextView;public class Next extends Activity{private TextView textView;private Button button;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.next);button=(Button)findViewById(R.id.button3);button.setOnClickListener((android.view.View.OnClickListener) new ButtonLisener());textView=(TextView)findViewById(R.id.textView1);}class ButtonLisener implements OnClickListener{@Overridepublic void onClick(DialogInterface dialog, int which) {  Intent intent = getIntent();  String checkedleft = intent.getStringExtra("checkedleft");  String checkedright = intent.getStringExtra("checkedright");    // 设置View为可见  textView.setVisibility(View.VISIBLE);  button.setVisibility(View.VISIBLE);  String msg = "左边:" + checkedleft + "\n" + "右边:" + checkedright   + "\n";  if (checkedleft.equals(checkedright)) {  textView.setText(msg + "平局");  }  if (checkedright.equals("石头"))  {  if (checkedleft.equals("剪刀")) { textView.setText(msg + "右边赢");}  else if (checkedleft.equals("布")) {textView.setText(msg + "左边赢"); }  }  if (checkedright.equals("剪刀")) {  if (checkedleft.equals("布")) {   textView.setText(msg + "右边赢");  } else if (checkedleft.equals("石头")) {   textView.setText(msg + "左边赢");  }  }  if (checkedright.equals("布"))   {  if (checkedleft.equals("石头")) {   textView.setText(msg + "右边赢");  }   else if (checkedleft.equals("剪刀")) {   textView.setText(msg + "左边赢");   }   }}}}

猜拳游戏的基本思路

1、先设置好基本布局界面

2、思考猜拳的基本形式,怎样判断谁胜谁负?

3、怎样用java代码实现这种形式,要用到那些类?哪些方法?

下载资源请点击:Android 猜拳游戏0积分下载


更多相关文章

  1. android 动态创建控件并设置布局
  2. 【个人总结】Android几种常用布局的总结
  3. [置顶] 【Android】毫无耦合性,一个Item根布局搞定 item侧滑删除
  4. Android布局绘制常见小问题
  5. android 布局方式 像素单位
  6. Android布局管理器-使用LinearLayout实现简单的登录窗口布局
  7. Android新控件MotionLayout介绍(一)
  8. android 修改AlertDialog的黑色背景的两种方式及圆角边框的设置
  9. Android中VideoView播放视频不能充满屏幕以及视频上的view与视频

随机推荐

  1. Android(安卓)SurviceView的触控和轨迹球
  2. Robotium 系列(2) - 简单介绍Monkey和Monke
  3. android drawtext 之baseline
  4. Android(安卓)Metro菜单
  5. Android(安卓)SDK 2.3与Eclipse最新版开
  6. Mac下Android(安卓)Studio简单使用
  7. android makefile(android.mk)分析(1)
  8. Android(安卓)Studio 导入Eclipse Androi
  9. handler异步处理
  10. Android(安卓)Studio获取SHA1(获取SHA1的