android 打地鼠,Android实现打地鼠小游戏
本文实例为大家分享了android实现打地鼠小游戏的具体代码,供大家参考,具体内容如下
实现结果
代码实现
playmouse.java
package com.example.playmouse;
import android.content.pm.activityinfo;
import android.os.bundle;
import android.os.handler;
import android.os.message;
import android.util.log;
import android.view.motionevent;
import android.view.view;
import android.view.windowmanager;
import android.widget.imageview;
import android.widget.textview;
import android.widget.toast;
import androidx.annotation.nonnull;
import androidx.appcompat.app.appcompatactivity;
import java.util.random;
public class playmouse extends appcompatactivity {
/************1.定义变量、对象、洞穴坐标******************/
private int i=0;//记录打到的地鼠个数
private imageview mouse;//定义 mouse 对象
private textview info1; //定义 info1 对象(用于查看洞穴坐标)
private handler handler;//声明一个 handler 对象
public int[][] position=new int[][]{
{277, 200}, {535, 200}, {832, 200},
{1067,200}, {1328, 200}, {285, 360},
{645, 360}, {1014,360}, {1348, 360},{319, 600},{764, 600},{1229,600}
};//创建一个表示地鼠位置的数组 @override
protected void oncreate(bundle savedinstancestate) {
super.oncreate(savedinstancestate);
setcontentview(r.layout.activity_main);
getwindow().setflags(windowmanager.layoutparams.flag_fullscreen,
windowmanager.layoutparams.flag_fullscreen);//设置不显示顶部栏
setrequestedorientation(activityinfo.screen_orientation_landscape);//设置横屏模式
/************2.绑定控件*****************/
mouse = (imageview) findviewbyid(r.id.imageview1);
info1 = findviewbyid(r.id.info);
/************获取洞穴位置*****************/
//通过 logcat 查看 【注】:getrawy():触摸点距离屏幕上方的长度(此长度包括程序项目名栏的)
info1.setontouchlistener(new view.ontouchlistener() {
@override
public boolean ontouch(view v, motionevent event) {
switch (event.getaction()) {
case motionevent.action_down:
float x = event.getrawx();
float y = event.getrawy();
log.i("x:" + x, "y:" + y);
break;
default:
break;
}
return false;
}
});
/************3.实现地鼠随机出现*****************/
//创建 handler 消息处理机制
handler = new handler() {
@override
public void handlemessage(@nonnull message msg) {
//需要处理的消息
int index;
if (msg.what == 0x101) {
index = msg.arg1; 获取位置索引值
mouse.setx(position[index][0]);//设置 x 轴坐标
mouse.sety(position[index][1]);//设置 y 轴坐标(原点为屏幕左上角(不包括程序名称栏))
mouse.setvisibility(view.visible);//设置地鼠显示
}
super.handlemessage(msg);
}
};
// 创建线程
thread t = new thread(new runnable() {
@override
public void run() {
int index = 0;// 定义一个记录地鼠位置的索引值
while (!thread.currentthread().isinterrupted()) {
index = new random().nextint(position.length);// 产生一个随机整数(范围:0<=index
message m = handler.obtainmessage();//创建消息对象
m.what = 0x101;//设置消息标志
m.arg1 = index;// 保存地鼠标位置的索引值
handler.sendmessage(m);// 发送消息通知 handler 处理
try {
thread.sleep(new random().nextint(500) + 500); // 休眠一段时间
} catch (interruptedexception e) {
e.printstacktrace();
}
}
}
});
t.start();
/************4.实现点击地鼠后的事件:让地鼠不显示&显示消息*****************/
// 添加触摸 mouse 后的事件
mouse.setontouchlistener(new view.ontouchlistener() {
@override
public boolean ontouch(view v, motionevent event) {
v.setvisibility(view.invisible);//设置地鼠不显示
i++;
toast.maketext(playmouse.this, "打到[ " + i + " ]只地鼠!",
toast.length_short).show(); // 显示消息提示框
return false;
}
});
}}
activity_main.xml
android:id="@+id/fl"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/background"
>
android:id="@+id/imageview1"
android:layout_width="72dp"
android:layout_height="72dp"
android:src="@drawable/mouse1"
/>
android:id="@+id/info"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
styles.xml(把顶部通知栏去掉)
@color/colorprimary
@color/colorprimarydark
@color/coloraccent
图片资源
background.jpg
mouse.png
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持萬仟网。
android 打地鼠,Android实现打地鼠小游戏相关推荐
- Android Studio实现贪吃蛇小游戏
项目目录 一.项目概述 二.开发环境 三.详细设计 四.运行演示 五.项目总结 六.源码获取 一.项目概述 贪吃蛇是一款经典的街机游戏,不仅在电子游戏史上占有一席之地,也在很多人的童年回忆中留下了深刻 ...
- android内存修改 跳一跳,Android版微信跳一跳小游戏利用技术手段达到高分的操作方法...
本文主要来讲个个好玩的东西,近来微信刚出的跳一跳微信小程序的游戏很火,看到很多人都达到了二三百分就各种刷朋友圈了. 甩手一个表情 最终我们达到的分数却是这样的: 羡慕吧 一定会有人拍手叫好," ...
- Android Studio实现推箱子小游戏
项目目录 一.项目概述 二.开发环境 三.详细设计 四.运行演示 五.项目总结 六.源码获取 一.项目概述 推箱子是一款非常受欢迎的益智游戏,游戏的玩法简单,但是需要玩家具备一定的逻辑思维能力和空间感 ...
- Android安卓app如何接入小游戏?
近几年app市场慢慢出现了饱和状态,同类产品过多导致市场竞争力愈发激烈,不少运营者萌发了为app引入小游戏的想法.因为小游戏能够显著增加用户在APP上的停留时间,而当用户停留时间越多,那么潜在的交易机 ...
- 一款android上的纸牌类小游戏
小弟写了个android上的一个纸牌类的小游戏,欢迎各位试玩啊! 以下是连接地址:http://m.wooboo.com.cn/app/app_detail.shtml?softId=2284 欢迎大 ...
- android 联机下100层小游戏开发心得
大作业做了联机的下100层小游戏,传统的下100层都是单机,这次尝试了双人联机对战. [联网] 由于是需要实时更新的强联网游戏,使用了socket,http的方式不适合写这种类型的游戏.关于逻辑判定的 ...
- android写的猜猜看小游戏
android版猜猜看 猜猜看app主要是帮助老师记住学生的一个app,因为是在手机上的应用,所以老师任何时候,只要有一部手机就可以玩,非常方便! 首先分析作业的需求,随机出现三张图片,每张图片一个名 ...
- android 简单的贪吃蛇小游戏
贪吃蛇是一款经典的小游戏,游戏比较简单,实现也比较简单. 本篇博客将详细介绍我自己写的贪吃蛇的思路以及实现方式. 首先我们需要在游戏界面将游戏区域划分成无数个小方格,类似下图 画布(游戏区域)的宽为 ...
- Android陀螺仪应用:平衡球小游戏
平衡球小游戏 在手机硬件还不够发达的早些时候,简易的"体感游戏"成为了手机游戏中的一个大头. 利用设备上自带的动态传感器,通过摇晃手机等方式,移动游戏物体来游玩的游戏. 为了成功理 ...
- android app 内嵌h5小游戏
layabox打包android APP 原理: 其实就是在app内部放置一个浏览器内核,这个内核可以是浏览器的系统内核,也可以是腾讯的x5内核,一般使用腾讯浏览器的x5内核,如果环境不允许,则使用默 ...
最新文章
- CVPR2020:点云弱监督三维语义分割的多路径区域挖掘
- CVE-2021-33909:Linux本地权限提升漏洞
- Guava Cache探索及spring项目整合GuavaCache实例
- 谷歌紧急更新,Chrome 今年第二个零日漏洞曝光
- volatile关键字使用总结
- 如何以管理员方式管理文件
- centos 切换用户_【站长亲测】迈拓维矩kvm切换器8口usb高清VGA显示器鼠标键盘切屏共享器8进1出...
- drools规则引擎介绍
- 在小写与大写之间加下划线
- Google Play的APK下载(APK Downloader)解决方案
- Idea Module not specified
- 远行星号java 出错_远行星号跳出问题[已解决]
- windows7未能连接一个windows服务(无法连接网络)的解决方法
- Redis之持久化实操(Linux版)
- 使用室内地图提升体育场体验的4种方式
- node 文字生成图片
- 使用antd-pro组件 实现图片上传和图片编辑
- 夯实基础——P1830 轰炸III
- 如何让MenuBar的菜单栏靠右对齐?
- 【科普园地】郭雷院士:系统的反馈原理及魅力
热门文章
- 游戏缺少d3dx9_XX.dll文件的解决办法
- 项目启动会注意事项-甲方
- 超详细!在我的世界(MC)中使用cocricot模组搭建一个咖啡厅
- Chromium+depot_tools
- VS2010/MFC编程入门之三十三(常用控件:标签控件Tab Control 下)
- 联想自带Y空间软件最好用的版本-可录屏无其它提示
- 功能架构图、信息结构图、产品结构图的区别和绘制方法
- 软考中级网络工程师-每日一练-01
- 捷联惯导系统学习7.4(车载惯性/里程仪组合导航 )
- zepto 清除html,Zepto的使用