でUITextview
を長時間押すと拡大鏡が表示されます。どうすればそれを無効にできますか?UITextviewで拡大鏡を無効にする
答えて
最後に、この問題は、また、ここで
を解決され、誰もが
を必要とする場合には、参照用のコードは、サブクラス化UITextviewのm個のファイルであることが動作するコード
-(void)addGestureRecognizer:(UIGestureRecognizer *)gestureRecognizer
{
//Prevent zooming but not panning
if ([gestureRecognizer isKindOfClass:[UILongPressGestureRecognizer class]])
{
gestureRecognizer.enabled = NO;
}
[super addGestureRecognizer:gestureRecognizer];
return;
}
を追加しました。
私は間違っていないと、これは完全に長いプレスを無効にします。言い換えれば、テキストビューにURLリンクや電話番号が含まれている場合(検出を有効にした場合)、長く押すとテキストビューでは応答できなくなります。 – antf
キャレットとテキストの編集も無効にしますか?この回答を参照してください - > [リンク](http://stackoverflow.com/questions/18139234/prevent-editing-of-text-in-uitextfield-and-hide-cursor-caret-magnifying-glass-wh/18139235#18139235 ) – thedeveloper3124
はい、@antfのように、このコードは完全にリンク、電話、イベントのタッチを無効にします。 – sig
イリーナの答えは次のようにiOSの9.xのとiOSの10のクラッシュのために(長押しが続くタップを試してみて、あなたが拡大オーバーレイを持つことになります)、部分的に動作します@これが私のために
@implementation CustomTextView
- (NSArray *)selectionRectsForRange:(UITextRange *)range
{
self.selectedTextRange = nil;
return nil;
}
- (void)addGestureRecognizer:(UIGestureRecognizer *)gestureRecognizer
{
gestureRecognizer.delegate = self;
[super addGestureRecognizer:gestureRecognizer];
return;
}
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender
{
return NO;
}
- (CGRect)caretRectForPosition:(UITextPosition *)position
{
return [super caretRectForPosition:self.endOfDocument];
}
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch
{
if (([gestureRecognizer isKindOfClass:[UILongPressGestureRecognizer class]] && !gestureRecognizer.delaysTouchesEnded))
{
return NO;
}
else
return YES;
}
の作品:
***キャッチされない例外により「NSInvalidArgumentException」、理由にアプリを終了:「あなたはUIViewControllerPreviewing障害関係のジェスチャー認識装置 のデリゲート を変更することはできません」
次のコードは、考えられるタップや長いジェスチャーのすべての組み合わせで、iOS 9.xと10.xの両方で動作します。
注Appleのレビューで受け付けられるとは限りません。
@implementation CustomTextView
- (void)addGestureRecognizer:(UIGestureRecognizer *)gestureRecognizer
{
NSArray *allowedGestures = @[ @"UILongPressGestureRecognizer", @"UIScrollViewDelayedTouchesBeganGestureRecognizer", @"UIScrollViewPanGestureRecognizer" ];
if (![allowedGestures containsObject:NSStringFromClass([gestureRecognizer class])])
{
return;
}
if (([gestureRecognizer isKindOfClass:[UILongPressGestureRecognizer class]] && !gestureRecognizer.delaysTouchesEnded))
{
return;
}
[super addGestureRecognizer:gestureRecognizer];
}
@end
我々はスクロールするUITextView
能力を維持するためにUIScrollViewDelayedTouchesBeganGestureRecognizer
とUIScrollViewPanGestureRecognizer
を必要としています。どちらのクラスもプライベートAPI の一部ですので、自己責任で使用してください。
- 1. UITextViewの下に拡大鏡が表示されないようにします
- 2. テキストiOSデバイスの拡大鏡
- 3. リーフレット拡大鏡プラグイン - スイッチングレイヤー
- 4. 拡大鏡ウィンドウを移動する
- 5. Android:ICSで拡大鏡を無効にするにはどうすればよいですか?
- 6. Windowsの拡大鏡を呼び出す
- 7. Qualtricsで拡大鏡を使用するには?
- 8. アンドロイドで拡大鏡を作成するには
- 9. NSViewまたは拡大鏡を使用して拡大/縮小する
- 10. UITextView - ハイライトを無効にする方法?
- 11. UITextViewとUITextViewのUITextViewのテキストが1行を超えて拡大する場合
- 12. 右パネルの拡大鏡(VScode)をオフにします
- 13. 拡大鏡とライトボックスイメージを変更するwoocommerce
- 14. 「拡大鏡」タイプのUIコントロールを実装する
- 15. 透明な拡大鏡を作る方法は?
- 16. UIImagePickerControllerの拡大/縮小コントロールを無効にする方法は?
- 17. ズームアウト/ズームアウト時の拡大/縮小ポリラインを無効にする
- 18. 拡大鏡がテキストビューに表示されない
- 19. UITextViewでキーボードを無効にする方法は?
- 20. RealBasicでスクリーン拡大鏡を書くことはできますか?
- 21. カスタマイズされたUIViewのテキスト選択と拡大鏡の実装
- 22. 画像拡大鏡とクリック可能なコンテンツ
- 23. 図のためのJavaScript拡大鏡 - ブラウザ間の互換性
- 24. デバッガビジュアライザ[Visual Studio 2010] - System.Linq.Expressions.Expression - 拡大鏡が表示されない
- 25. 画像拡大鏡 - マウスを動かすとホバーとパンの画像が拡大されます
- 26. Android Chrome - リンクが閉じるときに拡大を無効にする
- 27. コマンドラインでGoogle Chrome拡張機能を有効/無効にする
- 28. YUIベースの画像拡大鏡は誰でも知っていますか?
- 29. UITextViewクラスを拡張するには?
- 30. iOS - UITextViewはスクロールを無効にしますが、タッチを有効にします
このスレッドをチェックしてください(http://stackoverflow.com/questions/866200/disable-magnifying-glass-in-uitextfield) – Alexander
答えはこちら[こちら](https://stackoverflow.com/a/) 48077605/4061501)。 **サブクラスは必要ありません。** –