我可以通过创建IBAction方法并将其连接到IB中的按钮来轻松“做某事”。例如......
-(IBAction)popThat:(id)sndr{ [windy setFrame:eRect display:YES];}
但是,我不能,为我的生命,通过简单,可调用的方法来确定如何做到这一点......即
-(void) popThatMethod { [windy setFrame:eRect display:YES]; }
-(void) awakeFromNib { [self popThatMethod]; }
我希望期望这个方法与单击按钮的方式相同......因为它们是相同的...... 但是没有。什么都没发生。 我在这里缺少什么?
答案 0 :(得分:6)
我并未声明这绝对是最佳答案或正确的方法,但有一种方法可以将以下内容放在-applicationDidFinishLaunching:
中:
[self performSelector: @selector(popWindow:) withObject:self afterDelay: 0.0];
这会导致在runloop的下一次传递时调用它,到那时,之前没有的任何内容现在都已到位。
答案 1 :(得分:4)
根据您尝试做的事情,您可能需要
[buttonObj sendActionsForControlEvents: UIControlEventTouchUpInside];
触发按钮就像触摸按钮一样,并强制执行与其连接的任何操作。
注意:这是我提出this SO question.
时的答案