joh*_*ers 5 objective-c uibutton ios
我在IBAction语句中看到了两种处理发送方对象的方法.第一个看起来像这样:
-(IBAction)buttonPressed:(id)sender{
UIButton*someButton=(UIButton*)sender;
//do something with someButton.tag or whatever
}
Run Code Online (Sandbox Code Playgroud)
另一个似乎更容易
-(IBAction)buttonPressed:(UIButton*)sender{
//do something with sender.tag or whatever
}
Run Code Online (Sandbox Code Playgroud)
我通常会选择版本2.如果你知道只有一个按钮会发送到这个方法,任何特别的理由更喜欢一种风格而不是另一种风格?
我可以看到版本1哪里好,如果任何东西可以是发件人,如按钮,或开关或滑块等.但如果你正在寻找UIButton类似的属性tag,如果你的发件人不是一个没有太大的区别UIButton.因此版本2看起来更直接.
我想我是否会错过一个明显的理由来选择第一版.
我认为使用第二个版本没有问题。我通常使用第二个版本,如果发件人可能是一个以上类型的对象,则仅使用第一个版本。然后,如果该方法需要知道什么类型的对象,则该方法可以在将发送方转换为特定类型之前查询发送方。
更常见的是,我发现不需要访问发件人,因此我只使用:
- (IBAction)buttonPressed {
// Do something.
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
539 次 |
| 最近记录: |