[解決済み] UITextViewでリンクのクリックを妨害するには?
2022-10-22 14:25:30
質問
UITextViewで自動検出された電話リンクをユーザーがタッチしたときに、カスタムアクションを実行することは可能でしょうか?UIWebViewを使用するようにアドバイスしないでください。
また、アップルクラスのリファレンスからテキストを繰り返すのはやめてください。 - 私はすでにそれを読みました。
ありがとうございます。
どのように解決するのですか?
更新しました。より ios10 ,
- (BOOL)textView:(UITextView *)textView shouldInteractWithURL:(NSURL *)URL inRange:(NSRange)characterRange interaction:(UITextItemInteraction)interaction;
から
ios7
以降
UITextView
にはデリゲートメソッドがあります。
- (BOOL)textView:(UITextView *)textView shouldInteractWithURL:(NSURL *)URL inRange:(NSRange)characterRange *NS_DEPRECATED_IOS(7_0, 10_0, "Use textView:shouldInteractWithURL:inRange:forInteractionType: instead");*
を使って、リンクへのクリックを横取りします。そして、これが一番いい方法です。
には
ios6
およびそれ以前のバージョンでは、サブクラス化された
UIApplication
をサブクラス化し
-(BOOL)openURL:(NSURL *)url
@interface MyApplication : UIApplication {
}
@end
@implementation MyApplication
-(BOOL)openURL:(NSURL *)url{
if ([self.delegate openURL:url])
return YES;
else
return [super openURL:url];
}
@end
を実装する必要があります。
openURL:
をデリゲートで実装する必要があります。
さて、新しいサブクラスである
UIApplication
の新しいサブクラスでアプリケーションを開始するために、プロジェクト内の main.m ファイルを探します。アプリをブートストラップするこの小さなファイルには、通常次の行があります。
int retVal = UIApplicationMain(argc, argv, nil, nil);
3番目のパラメータは、アプリケーションのクラス名です。ですから、この行を次のように置き換えます。
int retVal = UIApplicationMain(argc, argv, @"MyApplication", nil);
これでうまくいきました。
関連
-
[解決済み] キーボードがあるときに、UITextFieldを編集開始時に上に移動させるには?
-
[解決済み] UITextViewのプレースホルダー
-
[解決済み] App Storeのアプリと連動させる方法
-
[解決済み] UITextViewのサイズをコンテンツに合わせるには?
-
[解決済み] UITextViewのマージン/パディングをなくす方法
-
[解決済み] UITextViewのキーボードをリターンキーで解除するには?
-
[解決済み] Objective-CでENUMを定義して使用するにはどうすればよいですか?
-
[解決済み] TabBarのタブビューにプログラムで切り替える?
-
[解決済み] ナビゲーションコントローラスタック、サブビュー、モーダルコントローラを使用せずに、ビューコントローラの変化をアニメーション化する?
-
[解決済み] 円形のカスタムUIViewの描き方 - iPhoneアプリ
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] UIPageControlのページネーションドットの色を変更するにはどうしたらよいですか?
-
[解決済み] APNSの.pemファイルを作成する?
-
[解決済み] Objective-CでENUMを定義して使用するにはどうすればよいですか?
-
[解決済み] Xcode 4.2 - '...' の宣言は、この関数の外では表示されません 警告
-
[解決済み] iPhoneでMonoTouchは禁止になったのか?[クローズド]
-
[解決済み] UITableViewHeaderFooterView。背景色を変更できない
-
[解決済み] Push Notificationのアラートテキストは何文字まで可能ですか?
-
[解決済み] UIWebViewの背景がクリアカラーに設定されているが、透明になっていない
-
[解決済み] UIImageViewのコーナー半径の設定がうまくいかない
-
[解決済み] iOS: HTTP POST リクエストを実行するには?