处理iPhone上UIButtons启用/禁用的最佳方法

时间:2010-04-10 23:40:47

标签: iphone cocoa-touch uibutton key-value-observing

我有一个增加按钮和一个减少按钮,这两个按钮都会影响一个变量。变量具有最小值,并且一旦达到最小值,减少按钮将被禁用。同样,对于变量的最大值。在我的控制器中,我有两个IBAction用于增加和减少操作,以及两个IBOutlet,以便相应地禁用按钮。在我的KVO语句的底部处理价值变化,我有:

increaseButton.enabled = value != MAX;
decreaseButton.enabled = value != MIN;

虽然这段代码功能齐全,但我不禁觉得这是一个天真的问题解决办法,特别是因为这需要4个连接。有没有更好的解决方案,使用更少的连接?

1 个答案:

答案 0 :(得分:1)

在我看来,这是一个非常好的方法。如果您可能添加更多按钮,使用其他规则,或者您需要更多其他方式的灵活性,那么可能值得考虑以某种方式使代码更加智能化。但是在这里你知道你想要什么,你已经实现了它并且它有效。那有什么不喜欢的?

如果你想减少连接数(但我不认为这本身就是一个值),你可以使用IBOutlets自己添加目标,而不是使用IBActions。但同样,我认为没有任何意义。