Pwn*_*ner 2 cocoa-touch uitextview ios
当我长按标准邮件应用程序中的任何文本时,我会看到"全选"选项.

但是,当我在我自己的UITextView中长按文本时,我没有得到该选项.我该如何添加?

这是我的UITextView的相关代码设置:
self.messageLabel = [[UITextView alloc] init];
self.messageLabel.dataDetectorTypes = UIDataDetectorTypeAll;
self.messageLabel.editable = NO;
self.messageLabel.scrollEnabled = NO;
self.messageLabel.selectable = YES;
self.messageLabel.textContainerInset = UIEdgeInsetsZero;
self.messageLabel.textContainer.lineFragmentPadding = 0.0;
Run Code Online (Sandbox Code Playgroud)
这是因为:
self.messageLabel.editable = NO;
Run Code Online (Sandbox Code Playgroud)
因此,为了确定您有三个选择.
删除该行(或将其设置为YES),它将显示这些选项.
canPerformAction:在您定义的viewController类中实现方法UITextView
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender
{
if (action == @selector(selectAll:))
{
return YES;
}
return [super canPerformAction:action withSender:sender];
}
Run Code Online (Sandbox Code Playgroud)
并实现如下selectAll:方法:
- (void)selectAll:(id)sender
{
[self.messageLabel selectAll:sender];
}
Run Code Online (Sandbox Code Playgroud)
注意:如果你没有实现canPerformAction:那么只是定义selectAll:方法也将工作.
| 归档时间: |
|
| 查看次数: |
1203 次 |
| 最近记录: |