iOS 屏蔽多个按钮同时按下的实现

By | 2013年11月12日

本站文章皆为苹果鱼迷原创,请尊重版权,转载请注明出处。

  • 原因

iOS中默认所有的按钮都是可以同时点击的,这样就有可能造成内存漏泄,小则界面元素混乱,重则程序crash。网上的那些繁琐的设置flag的方法看着就蛋疼,那有没有办法让程序一次只能按一个按钮呢?

  • 解决方法

[code lang=”objc”]

// UIView.h

@property(nonatomic,getter=isExclusiveTouch) BOOL       exclusiveTouch;         // default is NO

[/code]

在UIView.h中,有这样一个方法

[code lang=”objc”][self.view setExclusiveTouch:YES];[/code]

通过观察我们可以知道这个方法的默认值为NO,也就是可以同时点击。在这里,我们需要对继承自UIView类的子类进行设置,将其值设置为YES。

  • 示例代码

[code lang=”objc”]

// 防止多按钮同时点击

for (int i = TAG_HOTEL_INTRO; i < TAR_SWITCHLAN + 1; i++)

{

UIButton *button = (UIButton *)[self.view viewWithTag:i];

[button setExclusiveTouch:YES];

}

[/code]

版权声明:

本站所有关于iOS技术的文章皆为原创,如需要转截,请注明出处。如果你有疑惑,可以到苹果渔迷的淘宝店挖挖宝贝,里面或许有你想要的东西。

苹果渔迷淘宝店:http://appfish.taobao.com

主营iOS软件开发服务,代理申请iOS开发者帐号(个人、公司、企业),代理申请邓白氏编码。顺便还卖一些小渔具,有需要的朋友可以进来苹果渔迷的淘宝店看看。