Android菜鸡的提升之路---自闭症儿童游戏的实现

最近花了几天时间写一个帮助自闭症儿童的小项目,项目主要包括4个小游戏,实现的逻辑不难,没太多技术含量,但是有一些小知识点,相当于汇总一下。


写在最上面:当你的项目需要加载很多图片的时候,千万不要在xml文件直接放,最好也不要在java文件里面setbitmap,很有可能内存溢出,强烈建议用开源项目,比如我用的Glide。

首先先献上一波图片:








接下来逐次讲解每一个活动实现:

1.首页的实现,底图是一张图片,主要就是中间风车的转动,那么这里用了网上的方法(用animation动画),先新建一个包,取名 res->anim。然后在anim包,在包里新建一个属性文件,

<? xml version = "1.0" encoding = "utf-8" ?>
< set xmlns:android = "http://schemas.android.com/apk/res/android" >
 
  < rotate
  android:duration = "5000"
  android:fromDegrees = "0"
  android:pivotX = "50%"
  android:pivotY = "50%"
  android:repeatCount = "-1"
  android:repeatMode = "restart"
  android:toDegrees = "360" />
 
</ set >


duration:时间</span>

fromDegrees="0":  从几度开始转</span>t

oDegrees="360" : 旋转多少度</span>       

pivotX="50%:旋转中心距离view的左顶点为50%距离,

pivotY="50%: 距离view的上边缘为50%距离

repeatCount="-1":重复次数,-1为一直重复

repeatMode="restart":重复模式,restart从头开始重复 

调用:

ImageView imageView = (ImageView) findViewById(R.id.imageview);
  //动画
   Animation animation = AnimationUtils.loadAnimation( this , R.anim.img_animation);
  LinearInterpolator lin = new LinearInterpolator(); //设置动画匀速运动
  animation.setInterpolator(lin);
  imageView.startAnimation(animation);
  }

以上代码就是网上广为流传的代码,但是有一个点,就是当你的控件转动的时候,其实控件对应的点击事件没有改变过(比如 开始控件在A 位置,现在转动到了B位置你点击B位置无效,必须点击A位置,所以说转动只是视觉效果,控件本身没有改变位置)

在首页,点击风车以外的地方,会停止转动(stop动画) 这个时候,你就会发现,控件回到了原来的位置,这里也验证了上面红色字体的话。

2.点击首页之后,跳转到第一个游戏,下面是图片:




这里先是用了https://blog.csdn.net/sdfsdfdfa/article/details/79862917#reply的幸运夺宝自定义view,有兴趣的可以看看,但是在调用的时候有个问题:当我把抽奖放到活动A ,A中有一个控件,点击跳到活动B,这样做程序会闪退 您的代码我也这样试过,一样闪退,问题是 空指针 ,位置在LuckyBoard.java的 mCanvas 。mCanvas报错空指针

那么我的解决方法就是在报错的地方加上try catch,作者给的解决方法是:

这可能是onSurfaceDestroyed的时候mCanvas置空了,此时线程可能还在运行。把mCanvas置空的表达式注释就可以。

然后这里我也改动了一部分源码,把画矩形的部分稍微改动,具体可以看我的源代码,也可以比对我的之后的效果和原作者给的效果对比。

接下来继续我们的实现,当最后幸运地选择了某一张图片,那么这张图片会显示在 展示台上,然后播报语音。 最后点击展示的图片回退到主界面

3.下面是第二个游戏的实现,这个是个移动图片的游戏,具体做法在上一篇博客中有《android菜鸡提升之路---实现一个积木拼图游戏》下面是

图片:


4.第三个游戏就是显示一条马路,两边有房子,车,点击后,跳出卡片,点击播放,播报出当前卡片的内容:具体实现逻辑是,放一张底图(用Glide,不然很卡,而且容易崩溃),只可以点击的地方放按钮,设置透明度为0,在中间放imageview,先设置不可见,点击按钮后设置可见,可点击。下面是图:

 

没什么难度,就不放代码了,最后会附上源码,有兴趣可以看看。

5.第五个游戏,先把图片按九宫格放好,必须按照顺序点击才有效,有效后显示动物图片下面是图:


这里附上完整源码:

https://download.csdn.net/download/weixin_38316492/10366184

这里设置了积分,如何没有积分的小朋友,私信一下,看到会给资源。



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值