【发布时间】:2012-05-20 21:43:22
【问题描述】:
我曾经使用 XCode 来开发我的应用程序并使用它;我可以在 IB/Storyboard 中创建一个链接来合成这些方法:
- (void)addTarget:(id)target action:(SEL)action forControlEvents: (UIControlEvents)controlEvents
什么时候
但是,不,我是以编程方式完成的(在 rubymotion 中,虽然不一定相关)并查看 UITextField 的文档,我发现了一些委托方法,我实现如下:
def textFieldShouldReturn(text_field)
text_field.resignFirstResponder
end
def textFieldShouldEndEditing(text_field)
# this is for validations; don't set a first responder here
true
end
def textFieldDidEndEditing(text_field)
text_field == @email_field ? @password_field.becomeFirstResponder : delegate.validate_login_info
end
但是使用这个,我发现我无法像以前使用 addTarget 方法那样在输入字段(我有两个;电子邮件和密码)之间切换。
这两种方法有什么区别?前者是否在幕后实现了后者?我不明白为什么一个会允许我通过标签,而另一个不会。我只是实现了委托方法与幕后的目标/动作方法不同吗?
感谢您的反馈, 巴春
【问题讨论】:
标签: ios delegates uitextfield target-action rubymotion