我想在游戏中创建不同的关卡。此时用户可以点击任何级别并播放该级别。我想阻止用户点击级别2,除非他们已经通过级别1。
我有一个VC类,它在一个级别的末尾说级别通过,清除下一级。 在这里我将有一个计数器,所以如果counter = 1 clear level 2等等。
我不确定如何点击按钮是否可点击。我希望解锁级别不可点击,并且在它们通过上一级别之前是略微不同的颜色。
关于如何做到这一点的任何想法?我也愿意接受更好的解决方案吗?
答案 0 :(得分:4)
更传统的Objective-C语法:
[button setEnabled:YES];
和
[button setEnabled:NO];
答案 1 :(得分:2)
我将通过Interface Builder取消级别2及以上按钮的启用状态。这样,默认状态就被禁用了。
然后,只有当他们满足要求时,才将按钮的启用状态设置为YES。
您需要保存它们符合要求的事实,以便您可以在视图加载时正确设置按钮的状态。
查看UserDefaults
课程,以便轻松保存用户数据。
答案 2 :(得分:0)
要禁用按钮,请使用以下代码:
button.enabled = NO;
要识别按钮,请为其添加一个标记级别的标记。
button.tag = LEVEL_OF_STAGE;
从parentView中检索按钮,
UIButton *btn = [parentView viewWithTag:STAGE_NUMBER];