【发布时间】:2013-09-23 03:11:05
【问题描述】:
我创建了一个UITextField的子类(TextFieldSubClass),下面是代码
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender {
[UIMenuController sharedMenuController].menuVisible = NO;
// if (action == @selector(paste:))
// return YES;
// if (action == @selector(select:))
// return YES;
// if (action == @selector(selectAll:))
// return YES;
return NO;
}
- (BOOL)canBecomeFirstResponder
{
return true;
}
- (CGRect)caretRectForPosition:(UITextPosition *)position
{
return CGRectZero;
}
在其他类中,我在 XIB 上添加了一个文本字段,并在属性窗口中将文本字段类设置为 TextFieldSubClass
当我点击此文本字段时,它没有获得焦点,它的光标没有显示,但可以在其中输入 ext。
即使当我点击文本字段时,它的代表也不会被调用,但会为 UITextField 类型的其他文本字段调用代表
如何关注子类文本字段?
我创建了子类,因为我想在双击 uitextfield 时隐藏菜单项。菜单项被隐藏,但插入符号仍在显示。
如何隐藏插入符号(用于选择文本的蓝色矩形)?
【问题讨论】:
-
您是否在例如 canBecomeFirstResponder 中设置了断点以检查它是否有效? (也:“返回真;”:S)
-
您是否为 TextFieldSubClass 创建/指定了委托?
-
@DavidRönnqvist 是的,检查并返回 true
-
@Rohan 不,我还没有创建代表
-
@gtechtech 那么我认为您需要在使用它的 ViewController 中指定 TextFieldSubClass 的委托
标签: iphone objective-c ios6 uitextfield