- (BOol)textFIEld:(UITextFIEld *)textFIEld shouldChangeCharactersInRange:(NSRange)range replacementString:(Nsstring *)string{ return NO;}
这样虽然文本是可选择的而且不可编辑,但是当你选择文本时,键盘总是显示出来,这有点烦人,因为你无法编辑文本.那么无论如何在不显示键盘的情况下使文本可选而不可编辑?
解决方法 您需要的是允许控件接收所有用户交互事件.因此,不要从textFIEldShouldBeginEditing返回NO.相反,请执行以下 *** 作:- (BOol)textFIEld:(UITextFIEld *)textFIEld shouldChangeCharactersInRange:(NSRange)range replacementString:(Nsstring *)string{ return textFIEld != _yourReadonlyTextFIEld;}
这将允许用户选择文本,并从d出菜单中选择剪切,复制和定义等选项.
更新:
此外,为了完整起见,您可能希望防止键盘在现有文本字段上完全显示.因此,根据对此问题的接受答案:uitextfield hide keyboard?,您可能需要添加:
- (voID)vIEwDIDLoad{ // Prevent keyboard from showing up when editing read-only text fIEld _yourReadonlyTextFIEld.inputVIEw = [[UIVIEw alloc] initWithFrame:CGRectZero];}总结
以上是内存溢出为你收集整理的ios – 如何使UITextField可选但不可编辑?全部内容,希望文章能够帮你解决ios – 如何使UITextField可选但不可编辑?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)