首页 > 编程知识 正文

有源码怎么用aide打包,java编程入门基础教程

时间:2023-05-05 13:17:23 阅读:140746 作者:1867

第二章第一游戏系列教程导航

2.6游戏开发

2.6.5核心部分

文章目录监听器的核心部分测试后述

监听器

前面两个,我们已经设计了两个工具函数。 猜数字游戏的其余部分并不复杂,以后只写一个函数就可以了。 所谓的核心部分。 通过这个函数,玩家可以与程序进行交互。

这个函数应该写在哪里? 考虑一下这个函数什么时候被调用。 在下面的编辑框中输入内容后,单击按钮,程序将执行此函数。 然后,这个函数获取编辑框的内容,经过处理,在上面的文本框中显示结果。

很明显,这个函数与按钮有很大的关联。 因为只有按下按钮时,这个函数才会执行。

为了更好地理解以下知识,举个例子吧。 假设女儿有一条纤细的迷你裙,琴书画样样精通,老爷把她当成掌上明珠。 丈夫为了让她有自保的能力,特意安排了保镖。 老爷分配给保镖的任务很简单,陌生人接近苗条的迷你裙时,马上拦住陌生人。 有一天,一个社会青年看到苗条超短裙的美丽,想要出轨。 然后轻轻地接近了苗条的迷你裙。 保镖很快就看到了这一幕呢。 然后想起了自己的任务,阻止了社会青年。

接下来,我们来学习事件监听的结构。 首先,我们(老爷)有纽扣(纤细的迷你裙)。 为了使按钮具有某种功能,需要配置监听器(保镖)。 我们给监听器添加事件处理方式(任务:陌生人靠近---阻止他),然后把监听器绑定到按钮上(安排保镖)。 在我们的小游戏中,这个事件当然是按按钮。 然后,当按钮被按下时(社会青年接近纤细的迷你裙时),监听器会检测到这个动作,并想起调用前面添加的方法进行处理)的任务,阻止社会青年。

上面的过程概述了如何将事件添加到侦听器。 将侦听器绑定到按钮; 发生事件; 侦听器处理事件。 知道了这个之后,我们发现我们想写的部分中心函数其实是如何处理侦听器单击了按钮这个事件。 因此,在编写核心部分之前,首先将侦听器绑定到按钮。

在2.6.3中,获取了包含按钮的控件的对象。 因此,可以直接使用与按钮对象关联的函数来添加侦听器。 具体地说,是setOnClickListener函数。 请注意,绑定侦听器的代码必须在onCreate函数中编写。

setOnClickListener函数需要侦听器对象作为参数。 为此,必须创建侦听器对象。 (还记得new关键词的使用方法吗? 复习(在此,您不需要定义其他变量来临时“保存”侦听器对象。 如下所示。

添加大括号并编写onClick方法,因为创建侦听器对象需要指定如何处理事件。

这样就完成了侦听器的创建和绑定。 然后,单击该按钮时,将立即执行相应侦听器的onClick方法。

核心部分

当玩家单击按钮时,必须首先获取编辑框的内容并将其转换为字符串(使用任何对象都有的toString方法)。 为此,请使用编辑框对象的getText方法。 具体代码如下。

如综述篇所述,玩家的输入大致有4种情况:

开始游戏

没有输入任何内容

某4位数字

其他内容

我们会依次处理这几种情况。 首先是开始游戏。 玩家输入“开始游戏”,按下按钮后,首先清除上面的文本框和下面的编辑框的内容。 实际上,无论输入什么,编辑框都必须为空。 然后调用生成随机数的函数生成随机数并将其存储在某个变量中。 最后在文本框中添加文本。 例如,“新游戏开始了! 你还有六次机会”。

仔细想想,存储随机数和存储游戏剩余次数的变量还没有定义呢。我认为这些变量应该一直存在,所以也将其定义在onCreate函数之外。

最后,在文本框中添加提示文本。

运行并测试一下吧:

结果失败了。 文本框中不显示消息。 虽然导致此问题的原因很复杂,但结果为false,因为在if(text=='游戏开始')语句中,)=的两侧不是同一对象。 现在,您实际上想比较两个字符串对象的内容,所以必须使用equals方法。 之后,还需要注意字符串的比较。 如下所示。

重新执行APP应用程序。

现在没事了。 至此,“游戏开始”的处理完成。 接下来是什么都没有输入的处理。 这是为了防止玩家不小心按错按钮。 为此,我在函数之前写。 请注意,即使未输入任何内容,编辑框中也会有空字符串。

接下来,处理数字的状况。 为了简化思路,假设玩家输入的内容除了“开始游戏”以外都是4位数字。 因此,我们直接把text变量和answer作为参数,调用getSimilari

ty方法。即可获取到玩家猜测的数字和答案直接的相似度了。

    接着向文本框里面添加玩家猜测的数字和程序的提示文本,使用文本框对象的append方法。注意添加换行符(也就是回车),否则添加的文本全都在同一行。Android的换行符是n

    玩家的剩余次数也需要跟着自减1,并跟在提示信息后面:

    我们紧接着写胜负判断:如果相似度是4A0B的话,那么说明玩家猜中了;如果次数变为0,那么可以判定游戏失败。这个比较简单,所以我直接放出代码:

    事实上,我们的小游戏到此为止已经开发结束了,大体的流程已经全部实现。为了简化开发过程,我就不再做其他的优化了,大家可以根据自己的喜好添加别的功能。



测试

    下面我们来测试一下:

最后一行好像有点奇怪,仔细检查之后才发现原来是忘记在判定为胜利的时候,在文本框里面添加玩家猜测的数字了。如果需要的话可以加上这一句:



后记

    猜数字小游戏的开发到此结束!整个开发过程看起来很复杂,但是大部分内容相信大家都是可以理解的。最后的测试结果还不错,基本上符合预期要求,为了猜中那个数可花了我不少时间。

    本篇文章中涉及的代码并不一定很好,大家可以根据自己的需要进行优化。

    教程中的MainActivity.java的所有代码:网盘链接,提取码:owen。

感谢你的阅读!本教程会长期不定时更新。本人不是大神,也会犯错,如果有建议或者提问的话,欢迎评论留言!

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。