安卓学习之路_20140504_拼图游戏步骤回放、menu菜单

今天主要学习的是拼图游戏的操作步骤的回放

要想实现回放,首先要记录打乱状态后准备就绪等待玩家操作时候的每一个切块的位置,这里在打乱操作完成后,我们记录一次每一个切块的id就可以了,把当前id的排列顺序记录到一个一维数组中就行了。

记录好打乱状态后,我们还需要写一个方法来在用户赢了过后重新恢复每一个切块的位置为当初打乱过后的位置。

要实现回放需要记录玩家的每一步操作,我们在移动的方法中,把每次交换的两个id分别记录下来,以一个数组的方式存放到一个集合中去,这样,玩家每操作一步,我们就记录一次。

具体的回放就是一个自动交换id的过程,我们只需要遍历集合中的元素,每找到一个元素,我们就让这个元素中的两个id值进行交换,然后把图换出来,这样不断的取集合中的值,就能实现回放的效果了。


具体代码还有一点小bug,处理好了再写上。


menu菜单的添加,menu菜单就是触摸屏幕下档的菜单键给我们的一个选项,有点类似于一个Dialog,在屏幕的下方弹出,这个只需要在activity中重写onCreatMenu方法,然后往里面添加各个选项即可,通过add()方法添加onCreateOptionsMenu方法,然后往里面添加各个选项即可,通过add()方法添加

menu的点击事件就是重写onOptionsItemSelectedmenu方法来实现的,通过item.getItemId()的id来判断用户点击的是哪个选项。

实例:

@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		menu.add(0, 0, 0, "返回游戏");
		menu.add(0, 1, 0, "游戏帮助");
		menu.add(0, 2, 0, "游戏设置");
		menu.add(0, 3, 0, "返回选关");
		return super.onCreateOptionsMenu(menu);
	}

	@Override
	public boolean onOptionsItemSelected(MenuItem item) {
		switch (item.getItemId()) {
		case 0:
			break;

		case 1:
			Intent intent = new Intent(this, HelpActivity.class);
			startActivity(intent);
			finish();
			break;

		case 2:
			Intent intent_2 = new Intent(this,SettingActivity.class);
			startActivity(intent_2);
			finish();
			break;
			
		case 3:
			Intent intent_3 = new Intent(this, StartActivity.class);
			startActivity(intent_3);
			finish();
			break;

		default:
			break;
		}
		return super.onOptionsItemSelected(item);
	}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值