`
qiushyfm
  • 浏览: 97496 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

Android学习初体验 猜牌游戏源码

阅读更多

懒得按部就班的看教程,有Java功底,有J2ME基础,其实就已经入门了。

 

万能开发入门程序开发模式:

 

选择一种布局方式-->在合适的位置放入控件(文本框、标签、按钮等)-->绑定事件监听-->找到程序起动入口(main(),onCreate() 等)-->取出前端界面的值 然后处理数据 -->把结果展示到界面上。

 

OK,其实入门就是知道有哪些可用的控件(andriod 上叫做Widget),然后看API有哪些属性和方法可用。这里说的只是入门。

 

刚开始学习Android开发,今天写了个小游戏玩玩。《猜牌游戏源码》,直接发代码:
Activity文件:GuessPokerActivity.java

 

public class GuessPokerActivity extends Activity implements OnClickListener {

	/* 声明三张扑克 */
	private ImageView imgview1, imgview2, imgview3;
	/* 声明重新猜牌按钮 */
	private Button reguessbt;
	/* 初始化化三张扑克数组 */
	private int[] pImage = { R.drawable.pa, R.drawable.p2, R.drawable.p3 };
	/* 重新开始标记 游戏一次后变为1 重玩游戏后为0 */
	private int a = 0;

	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);

		/* 取得界面各控件 */
		imgview1 = (ImageView) findViewById(R.id.imageView1);
		imgview2 = (ImageView) findViewById(R.id.imageView2);
		imgview3 = (ImageView) findViewById(R.id.imageView3);
		reguessbt = (Button) findViewById(R.id.reGuess_Bt);

		/* 洗牌 */
		RandSetPk();

		/* 设置事件监听 */
		imgview1.setOnClickListener(this);
		imgview2.setOnClickListener(this);
		imgview3.setOnClickListener(this);
		reguessbt.setOnClickListener(this);
	}

	/* 实现点击事件 */
	public void onClick(View v) {
		switch (v.getId()) {
		case R.id.imageView1:
			judgeImage(0, imgview1);
			break;
		case R.id.imageView2:
			judgeImage(1, imgview2);
			break;
		case R.id.imageView3:
			judgeImage(2, imgview3);
			break;
		case R.id.reGuess_Bt:
			reStart();
			break;
		}
	}

	/**
	 * 判断点击的图片是否红桃A
	 */
	private void judgeImage(int ind, ImageView sImg) {
		if (a > 0) {
			return;
		}
		// 将三张扑克设置到界面三张图片中
		imgview1.setImageResource(pImage[0]);
		imgview2.setImageResource(pImage[1]);
		imgview3.setImageResource(pImage[2]);

		imgview1.setAlpha(100);
		imgview2.setAlpha(100);
		imgview3.setAlpha(100);
		sImg.setAlpha(255);

		// pImage[0] 即为 imgview1; pImage[1] 即为 imgview2 ...
		if (pImage[ind] == R.drawable.pa) {
			Toast.makeText(this, "恭喜你猜对了", Toast.LENGTH_SHORT).show();
		} else {
			Toast.makeText(this, "对不起,你猜错了", Toast.LENGTH_SHORT).show();
		}

		a++;
	}

	/**
	 * 随机设置三张扑克的位置
	 */
	private void RandSetPk() {
		// 随机三张扑克数组元素位置
		for (int i = 0; i < pImage.length; i++) {
			int temp = pImage[i];
			int s = (int) (Math.random() * 2);
			pImage[i] = pImage[s];
			pImage[s] = temp;
		}
	}

	/**
	 * 重置游戏
	 */
	private void reStart() {
		imgview1.setImageResource(R.drawable.pback);
		imgview2.setImageResource(R.drawable.pback);
		imgview3.setImageResource(R.drawable.pback);
		imgview1.setAlpha(255);
		imgview2.setAlpha(255);
		imgview3.setAlpha(255);

		RandSetPk();

		a = 0;
	}
}

 布局文件:main.xml

 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
    <TextView android:text="猜猜那张是红桃A" 
		android:id="@+id/welcomestr_tv" 
		android:layout_width="fill_parent" 
		android:layout_height="wrap_content"
		android:textSize="19dip"
		android:typeface="serif"
		android:gravity="center">
	</TextView>
    <RelativeLayout android:layout_height="wrap_content" 
    	android:id="@+id/relativeLayout1" 
    	android:layout_width="match_parent"
    	android:gravity="center"
    	android:layout_marginTop="20dip">
        <ImageView android:id="@+id/imageView1" 
        	android:layout_width="71dip" 
        	android:layout_height="96dip" 
        	android:src="@drawable/pback" ></ImageView>
        <ImageView android:id="@+id/imageView2" 
        	android:layout_width="71dip" 
        	android:layout_height="96dip" 
        	android:src="@drawable/pback" 
        	android:layout_toRightOf="@id/imageView1"
        	android:layout_marginLeft="10dip" ></ImageView>
    	<ImageView android:id="@+id/imageView3" 
        	android:layout_width="71dip" 
        	android:layout_height="96dip" 
        	android:src="@drawable/pback" 
        	android:layout_toRightOf="@id/imageView2"
        	android:layout_marginLeft="10dip" ></ImageView>
    </RelativeLayout>
    <Button android:text="重新来猜" 
    	android:id="@+id/reGuess_Bt" 
    	android:layout_width="wrap_content" 
    	android:layout_height="wrap_content"
    	android:layout_gravity="center"
    	android:layout_marginTop="20dip"></Button>
    
</LinearLayout>

 效果图:

 

 

分享到:
评论

相关推荐

    Android猜牌游戏源码

    【Android猜牌游戏源码】是一款基于Android平台的猜数字游戏,它展示了如何在Android环境中开发一款简单的互动娱乐应用。这款游戏的核心玩法是让玩家猜测一个随机生成的数字,通过提示来逐渐接近正确答案,增加了...

    android 手机开发游戏源代码

    这个压缩包包含了10套完整的Android游戏源代码,对于学生和开发人员来说,它们是极好的学习材料和实践平台。下面,我们将深入探讨这些源代码可能涵盖的知识点,以及它们如何帮助你提升Android游戏开发技能。 首先,...

    Android猜牌游戏随机洗牌源码.rar

    Android猜牌游戏,包括了随机洗牌函数,在本例中进度条的应用很重要,设置进度条不可见,如果直接关闭会因为调用了其他线程的View而报错,因此采用了runOnUiThread(progressInvisible);注意 :这里要把i归0,否则...

    基于Android Studio实现的2048小游戏源代码,安卓大作业

    《基于Android Studio实现的2048小游戏源代码解析与实战》 2048是一款深受程序员喜爱的数字拼图游戏,它通过简单的合并规则,让玩家在享受游戏乐趣的同时,也能体验到算法的魅力。本篇文章将深入探讨如何基于...

    Android实例源码-小游戏类安卓源代码(7例).zip

    Android实例源码-小游戏类安卓源代码(7例) 安卓冒险游戏源码可直接运行类似于精灵快跑这种可做毕业设计 安卓飞机游戏 完美版的Android 拼图游戏APK和工程源码 猜拳游戏 用的libgdx引擎写的ACE 弹幕射击游戏设计与...

    基于AndroidStudio打地鼠小游戏源代码

    《基于Android Studio的打地鼠小游戏开发详解》 ...通过阅读源代码,分析各个类的功能,你将能更好地理解Android游戏开发的全貌,并从中学习到实际的编程技巧。同时,动手修改和运行代码,将是你提升技能的最好方式。

    基于Android的拼图游戏APP源码,Android拼图游戏APP源码,Android小游戏源码

    在本项目中,我们讨论的是一个基于Android平台的拼图游戏APP的源代码。这个APP是一个小型游戏,专为Android设备设计,旨在提供娱乐和认知训练。通过分析和理解这个源码,我们可以学习到Android应用开发中的多个核心...

    课程设计大作业基于java的Android Studio实现井字棋小游戏源码.zip

    课程设计大作业基于java的Android Studio实现井字棋小游戏源码课程设计大作业基于java的Android Studio实现井字棋小游戏源码课程设计大作业基于java的Android Studio实现井字棋小游戏源码课程设计大作业基于java的...

    安卓期末大作业基于Android的小游戏源码

    安卓期末大作业Android的小游戏源码安卓期末大作业Android的小游戏源码安卓期末大作业Android的小游戏源码安卓期末大作业Android的小游戏源码安卓期末大作业Android的小游戏源码安卓期末大作业Android的小游戏源码...

    [Android游戏源码]-简单的贪吃蛇源码.rar_Android游戏源码_android_android 贪吃蛇_贪吃蛇_贪

    在Android平台上,我们可以找到许多实现贪吃蛇的游戏源码,这为我们理解和学习移动游戏开发提供了宝贵的学习资源。这里我们将深入分析一款名为"简单的贪吃蛇源码"的Android游戏源码,探讨其设计思路、主要技术和实现...

    疯狂单击小游戏android源代码

    【疯狂单击小游戏Android源代码】是一个专门为Android平台开发的小游戏项目,它的核心设计思想是通过用户快速连续点击屏幕来获得分数,这类游戏通常能够考验玩家的手速和反应能力。这个项目的源代码是使用Android ...

    Android小游戏安卓游戏源码45款合集.zip

    Android小游戏安卓游戏源码45款合集: 21点游戏源码.rar Angle v1.0.ZIP Barrage_OpenGLES.rar Billiard_2D.zip catcake-0.9.5-android.tar.gz Chess.rar Crackedcarrot.rar CrazyFootBall.zip EggGame.rar Elose-wr....

    基于AndroidStudio的打地鼠游戏设计源码

    本项目是基于AndroidStudio的打地鼠游戏设计源码,包含30个文件,其中主要包含12个xml配置文件,10个webp图片文件,3个java源代码文件等。系统采用了Java编程语言,实现了打地鼠游戏的功能,包括游戏界面的设计和...

    Android 看图猜人名小游戏源码.zip

    《Android 看图猜人名小游戏源码分析与学习》 在当今移动互联网时代,游戏作为娱乐方式的重要组成部分,其开发技术也日新月异。Android平台因其开源性和广泛的设备支持,成为开发者们热衷的领域。今天,我们将深入...

    Android3D游戏开发技术详解源代码(各种游戏项目源码)

    这份"Android3D游戏开发技术详解源代码"集合提供了一个全面的学习资源,包含了多种游戏项目的源码,非常适合对3D游戏开发感兴趣或者正在学习这门技术的开发者。下面,我们将深入探讨这些标签所涵盖的关键知识点。 ...

    【经典Android游戏源码17】Android 看图猜人名小游戏源码

    这篇内容将深入解析《经典Android游戏源码17:Android看图猜人名小游戏》的相关知识点,帮助读者理解和掌握Android游戏开发的基本原理和技术。 首先,Android看图猜人名小游戏是一款基于Android平台的休闲娱乐应用...

    Android成语连连看游戏项目源代码

    【Android成语连连看游戏项目源代码】是一款基于Android平台开发的休闲益智游戏,它将中国传统文化中的成语融入到连连看玩法中,旨在提供一种寓教于乐的学习体验。通过这个游戏,用户不仅可以享受连连看的乐趣,还能...

    Android应用源码之数独游戏源码-IT计算机-毕业设计.zip

    在这款Android应用源码中,我们可以学习到如何利用Java语言和Android SDK来实现这样一个互动的游戏。 首先,我们要理解Android应用的基本架构。源码通常会包含以下几个部分:`MainActivity.java`是应用程序的主要...

    Android应用源码45套安卓源码合集.zip

    Android应用源码猜猜红桃A.rar Android应用源码百度统计例子.rar Android应用源码简单的Android图片轮播.rar Android应用源码简单的仿微信实现了表情效果.rar Android应用源码结合数据库进行摇一摇的实例.rar ...

    android-15源代码

    "android-15源代码"是Android SDK的一个重要组成部分,它提供了Android 4.0.4(API级别15)的原始源码,为开发者提供了宝贵的参考资料。本文将对这个源代码进行深入的剖析,帮助读者理解Android系统的基石。 一、...

Global site tag (gtag.js) - Google Analytics