在UITextView中点击光标会弹出一个UIMenuController。点击“选择”将导致选择相关文本,并显示另一个带有新选项的UIMenuController。在文本视图中的其他任何地方点击都会导致“第二” UIMenuController隐藏。
我有一个自定义UIMenuItem,在点击该菜单时,会选择UITextView中的当前文本行,然后再次显示UIMenuController以进行后续操作,但是“第二” UIMenuController会在点击时隐藏不可以在视图中的其他任何地方进行操作。
自定义菜单项操作:
Darkmode.js
答案 0 :(得分:1)
您可以在更改UITextView的选择时隐藏UIMenuController:
@interface ViewController () <UITextViewDelegate>
@property (weak, nonatomic) IBOutlet UITextView *textView;
@end
@implementation ViewController
@synthesize textView;
- (void)viewDidLoad {
[super viewDidLoad];
textView.delegate = self;
}
- (void)selectLine:(id)sender {
...
}
#pragma mark - UITextViewDelegate
- (void)textViewDidChangeSelection:(UITextView *)textView {
if (UIMenuController.sharedMenuController.isMenuVisible) {
[UIMenuController.sharedMenuController setMenuVisible:NO animated:YES];
}
}