我只需要以编程方式触发 UIButton 。我看过很多帖子,例如http://stackoverflow.com/questions/5625651/programmatically-fire-button-click-event
[btnLocations sendActionsForControlEvents:UIControlEventTouchDown];
该语句在“ viewDidLoad ”以及另一个按钮处理程序中运行良好。
-(void)viewDidLoad
{
[btnName2 sendActionsForControlEvents:UIControlEventTouchDown];
}
&&&&&&&
- (IBAction)btnName1:(id)sender {
[btnName2 sendActionsForControlEvents:UIControlEventTouchDown];
}
这很好用。但为什么它没有触发用户定义的方法。
像这样 :
-(void) myMEthod
{
if(true)
{
[btnName2 sendActionsForControlEvents:UIControlEventTouchDown];
}
}
简单的一个。但我没明白原因
我只需要知道为什么它没有发生?还有什么替代方案可以实现这一目标吗?
Thanks.
可能是尝试在另一个线程上调用 UI 事件时出现问题。尝试添加这个:
- (void)fireButtonEvent:(id)unused
{
[btnName2 sendActionsForControlEvents:UIControlEventTouchDown];
}
然后使用调用
[self performSelectorOnMainThread:@selector(fireButtonEvent:)
withObject:nil
waitUntilDone:false];
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)