禁用/启用UIButton

时间:2013-03-27 11:44:38

标签: ios objective-c xcode uibutton conditional

我想在游戏中创建不同的关卡。此时用户可以点击任何级别并播放该级别。我想阻止用户点击级别2,除非他们已经通过级别1。

我有一个VC类,它在一个级别的末尾说级别通过,清除下一级。 在这里我将有一个计数器,所以如果counter = 1 clear level 2等等。

我不确定如何点击按钮是否可点击。我希望解锁级别不可点击,并且在它们通过上一级别之前是略微不同的颜色。

关于如何做到这一点的任何想法?我也愿意接受更好的解决方案吗?

3 个答案:

答案 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];