我无法在 Swift iOS 中创建 UIResponder nextResponder
Posted
技术标签:
【中文标题】我无法在 Swift iOS 中创建 UIResponder nextResponder【英文标题】:I can't create UIResponder nextResponder in Swift iOS 【发布时间】:2014-10-22 14:37:05 【问题描述】:我有一个类 ASTextField,它在 UITextField 之后扩展,我想定义 textFieldResponder。
有什么解决方案可以在 Swift 中写下一行吗??
UIResponder* nextResponder = [textField.superview viewWithTag:nextTag];
下面哪个是Objective-C写的?
-(BOOL)textFieldShouldReturn:(UITextField*)textField;
NSInteger nextTag = textField.tag + 1;
// Try to find next responder
UIResponder* nextResponder = [textField.superview viewWithTag:nextTag];
if (nextResponder)
// Found next responder, so set it.
[nextResponder becomeFirstResponder];
else
// Not found, so remove keyboard.
[textField resignFirstResponder];
return NO; // We do not want UITextField to insert line-breaks.
【问题讨论】:
【参考方案1】:会是这样的
let nextResponder = textField.superview?.viewWithTag(nextTag) as UIResponder!
希望对你有帮助!
【讨论】:
我收到一个错误:“UIView?没有名为'viewWithTag'的成员” :( textField.superview 是什么类? 试试这个也让 nextResponder = textField.superview?.viewWithTag(nextTag) as UIResponder! 对不起,我的错!我在 UIView、UITextFieldDelegate 之后扩展:/ 但是您在评论中的回答有帮助,我没有“构建失败”,但我仍然无法进入下一个 TextField ;/ 只能关闭键盘以上是关于我无法在 Swift iOS 中创建 UIResponder nextResponder的主要内容,如果未能解决你的问题,请参考以下文章
如何使用swift2在ios9中创建jabberd xmpp客户端