在 UITextView 中隐藏 UIMenuController
Posted
技术标签:
【中文标题】在 UITextView 中隐藏 UIMenuController【英文标题】:Hide UIMenuController in UITextView 【发布时间】:2012-05-17 13:42:16 【问题描述】:子类 UITextView
这里是h文件
@interface CTextView : UITextView
@end
这是m文件代码
#import "CTextView.h"
@implementation CTextView
- (BOOL)canBecameFirstResponder
return NO;
@end
这是第一个 UIViewController 文件,其中子类 UITextview 正在使用
#import "First.h"
#import "CTextView.h"
textView = [[[CTextView alloc] initWithFrame:CGRectMake(0, 0, 320, 410)]autorelease];
[self.view addSubview:textView];
但仍然无法阻止从 UITextView 复制全选。如果我仍然遗漏任何东西或做错了什么,请告诉我。
感谢您的帮助。
【问题讨论】:
【参考方案1】:使用它来禁用复制:
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender
return NO;
【讨论】:
【参考方案2】:知道了。现在它正在工作
这里是供需要的人参考的代码
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender
[UIMenuController sharedMenuController].menuVisible = NO; //do not display the menu
if (action == @selector(copy:))
return NO;
else if (action == @selector(selectAll:))
return NO;
[self resignFirstResponder]; //do not allow the user to selected anything
return NO;
return [super canPerformAction:action withSender:sender];
现在唯一的问题是缩放。现在我必须努力从 UITextView 禁用它。
【讨论】:
【参考方案3】:您是否将启用的用户交互设置为“是”?
【讨论】:
textView.editable = NO; scrollView.scrollEnabled = YES;尚未为用户交互设置任何内容 textView.userInteractionEnabled = NO; 那么我将无法使用我需要的滚动功能 em,也许你需要 UILabel 而不是 textView以上是关于在 UITextView 中隐藏 UIMenuController的主要内容,如果未能解决你的问题,请参考以下文章
隐藏 iOS 键盘预测文本栏 - UITextView / UITextField