电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術(shù)文章
文章詳情頁

Android實(shí)現(xiàn)打地鼠小游戲

瀏覽:54日期:2022-09-24 16:42:50

本文實(shí)例為大家分享了Android實(shí)現(xiàn)打地鼠小游戲的具體代碼,供大家參考,具體內(nèi)容如下

實(shí)現(xiàn)結(jié)果

Android實(shí)現(xiàn)打地鼠小游戲

代碼實(shí)現(xiàn)

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.定義變量、對(duì)象、洞穴坐標(biāo)******************/ private int i=0;//記錄打到的地鼠個(gè)數(shù) private ImageView mouse;//定義 mouse 對(duì)象 private TextView info1; //定義 info1 對(duì)象(用于查看洞穴坐標(biāo)) private Handler handler;//聲明一個(gè) Handler 對(duì)象 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} };//創(chuàng)建一個(gè)表示地鼠位置的數(shù)組 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);//設(shè)置不顯示頂部欄 setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);//設(shè)置橫屏模式 /************2.綁定控件*****************/ mouse = (ImageView) findViewById(R.id.imageView1); info1 = findViewById(R.id.info); /************獲取洞穴位置*****************/ //通過 logcat 查看 【注】:getRawY():觸摸點(diǎn)距離屏幕上方的長度(此長度包括程序項(xiàng)目名欄的) 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.實(shí)現(xiàn)地鼠隨機(jī)出現(xiàn)*****************/ //創(chuàng)建 Handler 消息處理機(jī)制 handler = new Handler() { @Override public void handleMessage(@NonNull Message msg) {//需要處理的消息int index;if (msg.what == 0x101) { index = msg.arg1;//// 獲取位置索引值 mouse.setX(position[index][0]);//設(shè)置 X 軸坐標(biāo) mouse.setY(position[index][1]);//設(shè)置 Y 軸坐標(biāo)(原點(diǎn)為屏幕左上角(不包括程序名稱欄)) mouse.setVisibility(View.VISIBLE);//設(shè)置地鼠顯示}super.handleMessage(msg); } }; // 創(chuàng)建線程 Thread t = new Thread(new Runnable() { @Override public void run() {int index = 0;// 定義一個(gè)記錄地鼠位置的索引值while (!Thread.currentThread().isInterrupted()) { index = new Random().nextInt(position.length);// 產(chǎn)生一個(gè)隨機(jī)整數(shù)(范圍:0<=index<數(shù)組長度) Message m = handler.obtainMessage();//創(chuàng)建消息對(duì)象 m.what = 0x101;//設(shè)置消息標(biāo)志 m.arg1 = index;// 保存地鼠標(biāo)位置的索引值 handler.sendMessage(m);// 發(fā)送消息通知 Handler 處理 try { Thread.sleep(new Random().nextInt(500) + 500); // 休眠一段時(shí)間 } catch (InterruptedException e) { e.printStackTrace(); }} } }); t.start(); /************4.實(shí)現(xiàn)點(diǎn)擊地鼠后的事件:讓地鼠不顯示&顯示消息*****************/ // 添加觸摸 mouse 后的事件 mouse.setOnTouchListener(new View.OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) {v.setVisibility(View.INVISIBLE);//設(shè)置地鼠不顯示i++;Toast.makeText(playmouse.this, '打到[ ' + i + ' ]只地鼠!', Toast.LENGTH_SHORT).show(); // 顯示消息提示框return false; } }); }}

activity_main.xml

<FrameLayout xmlns:android='http://schemas.android.com/apk/res/android' android: android:layout_width='match_parent' android:layout_height='match_parent' android:background='@drawable/background' > <ImageView android: android:layout_width='72dp' android:layout_height='72dp' android:src='http://www.hdgsjgj.cn/bcjs/@drawable/mouse1' /> <TextView android: android:layout_width='fill_parent' android:layout_height='fill_parent' /></FrameLayout>

styles.xml(把頂部通知欄去掉)

<resources> <!-- Base application theme. --> <style name='AppTheme' parent='Theme.AppCompat.Light.NoActionBar'> <!-- Customize your theme here. --> <item name='colorPrimary'>@color/colorPrimary</item> <item name='colorPrimaryDark'>@color/colorPrimaryDark</item> <item name='colorAccent'>@color/colorAccent</item> </style></resources>

圖片資源

background.jpg

Android實(shí)現(xiàn)打地鼠小游戲

mouse.png

Android實(shí)現(xiàn)打地鼠小游戲

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Android
相關(guān)文章:
主站蜘蛛池模板: 石膏基自流平砂浆厂家-高强石膏基保温隔声自流平-轻质抹灰石膏粉砂浆批发-永康市汇利建设有限公司 | 货车视频监控,油管家,货车油管家-淄博世纪锐行电子科技 | 知企服务-企业综合服务(ZiKeys.com)-品优低价、种类齐全、过程管理透明、速度快捷高效、放心服务,知企专家! | 国产离子色谱仪,红外分光测油仪,自动烟尘烟气测试仪-青岛埃仑通用科技有限公司 | 液压升降平台_剪叉式液压/导轨式升降机_传菜机定做「宁波日腾升降机厂家」 | 机床导轨_导轨板_滚轮导轨-上海旻佑精密机械有限公司 | 生鲜配送系统-蔬菜食材配送管理系统-连锁餐饮订货配送软件-挪挪生鲜供应链管理软件 | 二次元影像仪|二次元测量仪|拉力机|全自动影像测量仪厂家_苏州牧象仪器 | 翻斗式矿车|固定式矿车|曲轨侧卸式矿车|梭式矿车|矿车配件-山东卓力矿车生产厂家 | Win10系统下载_32位/64位系统/专业版/纯净版下载 | 找培训机构_找学习课程_励普教育 | 行吊_电动单梁起重机_双梁起重机_合肥起重机_厂家_合肥市神雕起重机械有限公司 | 环氧铁红防锈漆_环氧漆_无溶剂环氧涂料_环氧防腐漆-华川涂料 | 湖南成人高考报名-湖南成考网 | 真空包装机-诸城市坤泰食品机械有限公司 | 钢托盘,铁托盘,钢制托盘,镀锌托盘,饲料托盘,钢托盘制造商-南京飞天金属13260753852 | 移动机器人产业联盟官网 | 广州展台特装搭建商|特装展位设计搭建|展会特装搭建|特装展台制作设计|展览特装公司 | 农产品溯源系统_农产品质量安全追溯系统_溯源系统 | 科箭WMS仓库管理软件-TMS物流管理系统-科箭SaaS云服务 | 海德莱电力(HYDELEY)-无功补偿元器件生产厂家-二十年专业从事电力电容器 | 北京自然绿环境科技发展有限公司专业生产【洗车机_加油站洗车机-全自动洗车机】 | 石家庄小程序开发_小程序开发公司_APP开发_网站制作-石家庄乘航网络科技有限公司 | 打孔器,打孔钳厂家【温州新星德牌五金工具】 | 服务器之家 - 专注于服务器技术及软件下载分享| 电气控制系统集成商-PLC控制柜变频控制柜-非标自动化定制-电气控制柜成套-NIDEC CT变频器-威肯自动化控制 | 厦门网站建设_厦门网站设计_小程序开发_网站制作公司【麦格科技】 | 闭端端子|弹簧螺式接线头|防水接线头|插线式接线头|端子台|电源线扣+护线套|印刷电路板型端子台|金笔电子代理商-上海拓胜电气有限公司 | 青岛侦探_青岛侦探事务所_青岛劝退小三_青岛婚外情取证-青岛王军侦探事务所 | 胶原检测试剂盒,弹性蛋白检测试剂盒,类克ELISA试剂盒,阿达木单抗ELISA试剂盒-北京群晓科苑生物技术有限公司 | 常州翔天实验仪器厂-恒温振荡器-台式恒温振荡器-微量血液离心机 恒温恒湿箱(药品/保健品/食品/半导体/细菌)-兰贝石(北京)科技有限公司 | 液氮罐_液氮容器_自增压液氮罐-北京君方科仪科技发展有限公司 | 污水提升器,污水提升泵,污水提升装置-德国泽德(zehnder)水泵系统有限公司 | lcd条形屏-液晶长条屏-户外广告屏-条形智能显示屏-深圳市条形智能电子有限公司 | 合肥注册公司|合肥代办营业执照、2024注册公司流程 | 污水处理设备-海普欧环保集团有限公司 | 广东泵阀展|阀门展-广东国际泵管阀展览会 | 5L旋转蒸发器-20L-50L旋转蒸发器-上海越众仪器设备有限公司 | 防火卷帘门价格-聊城一维工贸特级防火卷帘门厂家▲ | 体视显微镜_荧光生物显微镜_显微镜报价-微仪光电生命科学显微镜有限公司 | 机床主轴维修|刀塔维修|C轴维修-常州翔高精密机械有限公司 |