恩,自己很久以前写的一个银魂连连看的APP,现在整理分享出来
GitHub地址 : https://github.com/sadaharusong/Lianliankan/
感兴趣可以下载来玩玩以及修改其中的功能逻辑。
主页是这样:
游戏核心内容是这样:
主体的代码结构如图:
大概简述:
WelcomeActivity:
主要就是主页的实现,主页有4个按钮。点击其中一个会Focus,然后有动画效果,再次点击才会进入其功能页面。定义了一些Handle更新UI.
LLKanActivity:
游戏的核心地带,初始化一些控件,上方有跑马灯,有游戏时间进度条,核心View是一个自定义View,下方有分数显示,按菜单按钮还可以放技能,分数超过排行榜会保存分数,这些逻辑是在这里实现的。 在Activity的生命周期中是要记得退出或者返回的时候音乐震动这些service是要停止的。
GameView:
核心的View,一个自定义View,实现连连看的游戏核心功能,判断点击,判断连线,是否不能消除,打乱顺序,装载图片等等都是在此View中完成。逻辑功能需要弄透的一块。
SetGameActivity :
继承ListActivity,里面看起来就是ListView一样,在里面可以设置各种选项,声音,震动,难度等,这里面的功能有彩蛋~哈哈
AboutActivity :
继承ListActivity,里面看起来就是ListView一样,有最高分排行榜,推送给好友,反馈信息,基础规则等等。
Configuration :
构造类,关于一些存储,用户数据方面的IO流。
DataSet:
整个游戏全局的状态信息,如:音乐功能是否打开呀。
MediaService :
媒体服务,关于音乐的处理以及监听,主要负责音乐和声音这一块。
MyControl :
控制类,里面是一些工具,一些对话框,Toast,弹出的消息都在里面定义需要直接调用即可。
UserData:
用户数据。比如在排行榜的名字以及分数。
颜色在color.xml里,基本上string.xml里面都是关于文字的。
menu里面定义3个功能。