UITextView でのテキスト編集を無効にしたいのですが、カーソルだけを残してください。キーボード、切り取り、コピー、貼り付けメニュー、ズーム編集モードは既に無効にしています。しかし、まだ 1 つの問題があります。TextView をダブルタップすると、単語全体が選択されます。もう1つ、単語の末尾または先頭だけでなく、カーソルで任意の場所を選択するにはどうすればよいですか?
私の問題をよりよく説明するスクリーンショットを作成しましたが、評判のために投稿できません。ですから、私が言いたいことを正確に理解していただけることを願っています。
UITextView のサブクラス:
#import "UIUneditableTextView.h"
@implementation UIUneditableTextView
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
// Initialization code
}
return self;
}
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender
{
UIMenuController *menuController = [UIMenuController sharedMenuController];
if (menuController) {
[UIMenuController sharedMenuController].menuVisible = NO;
}
return NO;
}
-(void)addGestureRecognizerForLongPress:(UIGestureRecognizer *)gestureRecognizer
{
if ([gestureRecognizer isKindOfClass:[UILongPressGestureRecognizer class]]){
gestureRecognizer.enabled = NO;
}
[super addGestureRecognizer:gestureRecognizer];
return;
}
@end