`
明子健
  • 浏览: 573634 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Android猜牌小游戏(改进版)

阅读更多
此篇基于    Android猜牌小游戏    修改,简化代码,逻辑更为合理。

只修改MainActivity.java部分的代码:
package com.ming.puke;

import java.util.ArrayList;
import java.util.Random;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.Toast;

public class MainActivity extends Activity {
	private Button btnplayagian;// 再玩一次
	private boolean isopened = false;// 判断是否已开牌
	private int[] pks = { R.drawable.p01, R.drawable.p02, R.drawable.p03 };// 存放3张扑克的值
	private ArrayList<ImageView> pkimages = new ArrayList<ImageView>();// 存放3张扑克的体

	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		pkimages.add((ImageView) findViewById(R.id.puke1));
		pkimages.add((ImageView) findViewById(R.id.puke2));
		pkimages.add((ImageView) findViewById(R.id.puke3));
		for (int i = 0; i < pkimages.size(); i++) {
			pkimages.get(i).setOnClickListener(l);
		}
		btnplayagian = (Button) findViewById(R.id.btnplayagian);
		btnplayagian.setOnClickListener(l);
		randomPuke();
	}

	OnClickListener l = new OnClickListener() {
		public void onClick(View v) {
			if (v.getId() == R.id.btnplayagian) {
				randomPuke();
			} else {
				if (!isopened) {// 如果牌还没开才能开牌
					for (int i = 0; i < pkimages.size(); i++) {
						pkimages.get(i).setImageResource(pks[i]);
						if (i != pkimages.indexOf(v)) {// 将玩家没选择的牌面以灰暗效果处理
							pkimages.get(i).setAlpha(100);// 设置透明度,取值范围为0~255,数值越小越透明。
						}
					}
					Toast.makeText(
							// 显示开牌结果
							MainActivity.this,
							R.drawable.p01 == pks[pkimages.indexOf(v)] ? "恭喜你猜对了"
									: "遗憾你猜错了", Toast.LENGTH_SHORT).show();
					isopened = true;
				}
			}
		}
	};

	/** 洗牌 */
	public void randomPuke() {
		for (int i = 0; i < pkimages.size(); i++) {// 随机替换牌的顺序(并将洗好的牌翻到背面)
			pkimages.get(i).setImageResource(R.drawable.p04);
			int item = new Random().nextInt(3);// 抽出第item张牌
			pkimages.get(i).setAlpha(255);// 初始化选中状态
			pks[item] = pks[0] + 0 * (pks[0] = pks[item]);// 将第item张牌与第1张牌替换
		}
		isopened = false;
	}
}
1
0
分享到:
评论

相关推荐

    Android入门教程系列之1贪吃蛇改进版

    2011年资料/Android入门教程/Android入门教程系列之1——贪吃蛇改进版/

    推箱子改进版android游戏《乐推古楼》.zip

    该资源是本人自己的期末安卓作业,可以供下载学习,类似于推箱子的小游戏,《乐推古楼》是和传统文化有关的,所用软件android stdio3.5

    Android基础教程

    书中不仅结合数独游戏开发案例形象生动地讲解了Android生命周期、用户界面、2D图形、多媒体,以及本地数据存储等基础知识,而且通过“Hello, Android”项目深入探讨了外部通信、基于位置的服务、内置SQLite数据库、...

    版本:3.0大小:4.6M 适用固件:Android 2.2 以上

    4)无网联机对战游戏 超过80项改进的全新快牙2.0 1、全新界面风格设计; 2、传输速度提升10%; 3、设备兼容性提升18%; 4、安装包小至2M左右; 5、创新内容查看模式; 6、电脑版同步上线; 快牙 全球最快手机传输工具 版本...

    Car vs Cops 汽车与警察unity小汽车追逐小游戏项目源码

    物品商店允许玩家定制他们的体验,而“评价我们”按钮可以帮助我们改进并提供更好的游戏体验。通过 Admob、Chartboost 和 Unity 广告获利,或通过应用内购买删除广告。 在《奔跑与逃脱》中体验追逐的快感并在追击中...

    工程硕士学位论文 基于Android+HTML5的移动Web项目高效开发探究

    Chrome Frame 会把最新版的Chrome Webkit 内核和JavaScript 引擎注入到IE中, IE浏览器将获得Chrome的性能和功能 目录 摘要 I ABSTRACT II 专业名词清单 III 第一章 绪论 1 1.1 研究背景与意义 1 1.2国内外相关...

    Kids Coloring Book With Magic Pen 儿童魔笔涂色书 Unity画图游戏项目源码C#

    每当孩子们完成后,他们都可以保存自己的工作以向其他人展示,甚至可以稍后继续工作以改进它!该游戏中包含的惊人功能使其成为娱乐孩子并帮助他们提高绘画和着色技能的绝佳工具。 特征 AdMob(横幅、全屏) 轻松管理...

    ppsspp:适用于Android,Windows,Mac和Linux的PSP模拟器,用C ++编写。 想要贡献? 加入我们的Discord,网址为https:discord.gg5NJB6dD或发送拉取请求问题。 要进行讨论,请使用ppsspp.org上的论坛

    PPSSPP-快速,便携式的PSP仿真器由HenrikRydgård创建...1.11.0的新功能许多小错误修复,崩溃修复,性能修复和改进。 新的“浏览...”按钮允许在Android 11上打开SD卡ANR2ME修复了无数AdHoc网络,例如Dragon Ball Shin

    FlapHero:使用胶合板构建的小型C ++游戏

    随着时间的推移,随着胶合板的改进,这些构建步骤将变得更加简单。 如果您想支持这项工作,请考虑上支持该项目! 执照 Flap Hero的源代码在下提供。 在文件夹中找到的资产(包括3D模型,声音和音乐)已发布到公共...

    2048-TLX:分叉2048游戏TLX版

    的小克隆,基于 (也是一个克隆)。 只是为了好玩。 官方应用程序也可以在和 贡献 添加了最佳分数存储 添加了用于在移动设备上进行滑动处理的自定义代码 使滑动在 Windows Phone 上工作 添加了对 Android 2.3 的...

    海豚浏览器旋风版

    谢谢大家的支持,使海豚浏览器从2009年末登录Android操作系统就一直受到大家的关注和喜爱海豚浏览器炫风版带来了全新界面,6大类多达205项功能优化,使你的智能手机有更卓越的上网体验 我们将桌面体验引入浏览器,...

    QuickEdit Pro 1.4.3.apk

    http ://forum.xda-developers.com/ Android设备/应用程序,游戏/应用程序,快速编辑文本编辑器,t2899385 感谢您使用QuickEdit! 什么是新的 版本1.3.1 ✓SFTP的密钥文件认证。 ✓添加Fortran和Kotlin语法支持...

    QuizApp_server:QuizApp服务器,以龙卷风编写,可横向扩展

    #最新提交:进行了一些改进以更快地加载项目,并移至android studio和gradle。 我必须承认,这是我在android app上的第二次尝试:),关于控制器和屏幕概念的小问题。 启动代码时,我想拥有一个游戏和一个状态机...

    NetSupport School 课堂管理软件(简体中文版)

    出于这种考虑,NetSupport School 11 版提供了大量的新功能和增强的功能以及性能的改进,并扩大对新兴技术的支持,所有这些全都打包在一个新颖美观的用户界面里。 问答模块 新的问答模块提供了一组简单而引人注目的...

    密码管家 - 最强大的密码管理助手

    2. 从v1.5.0开始将不再支持Android 1.5版的手机,因为后续要实现的功能必须Android 1.6以上才行,所以还望在用Android 1.5版手机的机友见谅。 【疑问解答】 1. 为什么会访问网络,会不会偷偷上传用户的账户记录信息...

    PPSSPP-X360:通过ced2911和hrydgard修复ppsspp proyect x360

    时序上的改进,使更多游戏以正确的FPS运行,还解决了一些音频问题 更多调试器功能 四向触摸dpad的选件,避免了对角线问题 可单独调整大小的触摸控件 增加了在多碟游戏中切换UMD的功能(大多数情况下适用) 在支持...

    JAVA上百实例源码以及开源项目

    有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码加以改进做成小工具。 Java右键弹出...

    密码管家 - 最强大的密码管理助手(2012年2月2日重新上传v2.5.0)

    2. 从v1.5.0开始将不再支持Android 1.5版的手机,因为后续要实现的功能必须Android 1.6以上才行,所以还望在用Android 1.5版手机的机友见谅。 【疑问解答】 1. 为什么会访问网络,会不会偷偷上传用户的账户记录信息...

    JAVA上百实例源码以及开源项目源代码

    有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码加以改进做成小工具。 Java右键弹出...

Global site tag (gtag.js) - Google Analytics