本文实例为大家分享了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实现打地鼠小游戏相关推荐

  1. Android Studio实现贪吃蛇小游戏

    项目目录 一.项目概述 二.开发环境 三.详细设计 四.运行演示 五.项目总结 六.源码获取 一.项目概述 贪吃蛇是一款经典的街机游戏,不仅在电子游戏史上占有一席之地,也在很多人的童年回忆中留下了深刻 ...

  2. android内存修改 跳一跳,Android版微信跳一跳小游戏利用技术手段达到高分的操作方法...

    本文主要来讲个个好玩的东西,近来微信刚出的跳一跳微信小程序的游戏很火,看到很多人都达到了二三百分就各种刷朋友圈了. 甩手一个表情 最终我们达到的分数却是这样的: 羡慕吧 一定会有人拍手叫好," ...

  3. Android Studio实现推箱子小游戏

    项目目录 一.项目概述 二.开发环境 三.详细设计 四.运行演示 五.项目总结 六.源码获取 一.项目概述 推箱子是一款非常受欢迎的益智游戏,游戏的玩法简单,但是需要玩家具备一定的逻辑思维能力和空间感 ...

  4. Android安卓app如何接入小游戏?

    近几年app市场慢慢出现了饱和状态,同类产品过多导致市场竞争力愈发激烈,不少运营者萌发了为app引入小游戏的想法.因为小游戏能够显著增加用户在APP上的停留时间,而当用户停留时间越多,那么潜在的交易机 ...

  5. 一款android上的纸牌类小游戏

    小弟写了个android上的一个纸牌类的小游戏,欢迎各位试玩啊! 以下是连接地址:http://m.wooboo.com.cn/app/app_detail.shtml?softId=2284 欢迎大 ...

  6. android 联机下100层小游戏开发心得

    大作业做了联机的下100层小游戏,传统的下100层都是单机,这次尝试了双人联机对战. [联网] 由于是需要实时更新的强联网游戏,使用了socket,http的方式不适合写这种类型的游戏.关于逻辑判定的 ...

  7. android写的猜猜看小游戏

    android版猜猜看 猜猜看app主要是帮助老师记住学生的一个app,因为是在手机上的应用,所以老师任何时候,只要有一部手机就可以玩,非常方便! 首先分析作业的需求,随机出现三张图片,每张图片一个名 ...

  8. android 简单的贪吃蛇小游戏

    贪吃蛇是一款经典的小游戏,游戏比较简单,实现也比较简单. 本篇博客将详细介绍我自己写的贪吃蛇的思路以及实现方式. 首先我们需要在游戏界面将游戏区域划分成无数个小方格,类似下图 画布(游戏区域)的宽为 ...

  9. Android陀螺仪应用:平衡球小游戏

    平衡球小游戏 在手机硬件还不够发达的早些时候,简易的"体感游戏"成为了手机游戏中的一个大头. 利用设备上自带的动态传感器,通过摇晃手机等方式,移动游戏物体来游玩的游戏. 为了成功理 ...

  10. android app 内嵌h5小游戏

    layabox打包android APP 原理: 其实就是在app内部放置一个浏览器内核,这个内核可以是浏览器的系统内核,也可以是腾讯的x5内核,一般使用腾讯浏览器的x5内核,如果环境不允许,则使用默 ...

最新文章

  1. CVPR2020:点云弱监督三维语义分割的多路径区域挖掘
  2. CVE-2021-33909:Linux本地权限提升漏洞
  3. Guava Cache探索及spring项目整合GuavaCache实例
  4. 谷歌紧急更新,Chrome 今年第二个零日漏洞曝光
  5. volatile关键字使用总结
  6. 如何以管理员方式管理文件
  7. centos 切换用户_【站长亲测】迈拓维矩kvm切换器8口usb高清VGA显示器鼠标键盘切屏共享器8进1出...
  8. drools规则引擎介绍
  9. 在小写与大写之间加下划线
  10. Google Play的APK下载(APK Downloader)解决方案
  11. Idea Module not specified
  12. 远行星号java 出错_远行星号跳出问题[已解决]
  13. windows7未能连接一个windows服务(无法连接网络)的解决方法
  14. Redis之持久化实操(Linux版)
  15. 使用室内地图提升体育场体验的4种方式
  16. node 文字生成图片
  17. 使用antd-pro组件 实现图片上传和图片编辑
  18. 夯实基础——P1830 轰炸III
  19. 如何让MenuBar的菜单栏靠右对齐?
  20. 【科普园地】郭雷院士:系统的反馈原理及魅力

热门文章

  1. 游戏缺少d3dx9_XX.dll文件的解决办法
  2. 项目启动会注意事项-甲方
  3. 超详细!在我的世界(MC)中使用cocricot模组搭建一个咖啡厅
  4. Chromium+depot_tools
  5. VS2010/MFC编程入门之三十三(常用控件:标签控件Tab Control 下)
  6. 联想自带Y空间软件最好用的版本-可录屏无其它提示
  7. 功能架构图、信息结构图、产品结构图的区别和绘制方法
  8. 软考中级网络工程师-每日一练-01
  9. 捷联惯导系统学习7.4(车载惯性/里程仪组合导航 )
  10. zepto 清除html,Zepto的使用