tableviewcells
放在视图控制器中。我可以设置UITextField
的不同属性。但是,我找不到成功实施textField:shouldChangeCharactersInRange:replacementString:
的方法。
我该怎么办?感谢。
myTextField
- UITextField
的子类,符合<UITextFieldDelegate>
myTableViewCell
- UITableViewCell的子类
在此子类中,声明了myTextField属性并将其连接到nib布局。
myViewController
- UIViewController
的子类,符合<UITextFieldDelegate, UITableViewDelegate, UITableViewDataSource>
。使用表视图创建nib文件,表视图连接到表视图属性。还声明了myTableViewCell
的ivar,名为myCell。
在viewDidLoad
的{{1}}中,会调用以下内容:
[[myCell myTextField] setDelegate:self];
[myTableView setDelegate:self];
[myTableView setDataSource:self];
myViewController
也在textField:shouldChangeCharactersInRange:replacementString:
中实施。但是通过断点,它被发现根本没有实现。
答案 0 :(得分:0)
我希望textField
委托指向viewcontroller
类,rit?
我认为您的问题在于确定哪个textField正在调用该委托方法。
在这种情况下,1解决方案是将textField.delegate
指向UITableViewCell
或者如果你需要在控制器中处理,
为方法cellForRowAtIndexpath中的每个textField
设置标记:(基于indexPath.row
)
并在textField:shouldChangeCharactersInRange:replacementString:
与[textField Tag]