Cri*_*ter 3 iphone objective-c uibutton iboutlet ibaction
基本上我需要在视图中有几个按钮.我希望他们都能调用一个函数,这样我就可以跟踪'状态'.
如何判断哪个按钮称为该功能?无论如何得到发件人的文字?
在iOS中,操作方法(包括IBAction方法)可以具有以下任何签名(请参阅" UIKit中的目标操作 "):
- (void)action
- (void)action:(id)sender
- (void)action:(id)sender forEvent:(UIEvent *)event
Run Code Online (Sandbox Code Playgroud)
如果您使用接受发件人的方法签名,则您可以访问触发该操作的对象.然后,您可以访问调用对象上的属性,包括其标题和标记.您还可以将发件人与您可能已经拥有的指针进行比较,以确定哪个按钮是此特定事件的发件人.
我赞成比较指针,因为我相信这if (sender == self.nextPageButton)更容易理解,并且不太可能破坏if (sender.tag == 4)或if ([((UIButton *)sender).currentTitle isEqualToString:@"foo"]).查看IB中的标签不会告诉您代码假设它们的含义以及它们是否重要.标题将在您更新UI或本地化您的应用时更改,这些更改也不需要更改代码.
| 归档时间: |
|
| 查看次数: |
1105 次 |
| 最近记录: |