2016-09-20 5 views
0

アプリケーションでは、画像に添付されているtextview/webviewに安全リンクを埋め込みます。タップを受け取ったiOS 10の前にリンクデータ検出器の取り扱いUITextView/Link for webview iOS 10

- openURL:メソッドが実行され、以下のようにリダイレクトが処理されます。

- (BOOL)openURL:(NSURL *)url 
{ 
    if ([url shouldHandleLocally]) 
    { 
     return [self openURLApp:url isFromOtherApp:NO]; 
    } 
    return [super openURL:url]; 
} 

今すぐiOSの10で、この方法のどちらも -canOpenURL: -openURL:を発射し、ドキュメントにそれが

  • (BOOL)OpenURLの言及されている:(NSURL *)URL NS_DEPRECATED_IOS(2_0、10_0を、「使用してくださいopenURL:options:completionHandler:代わりに) ") NS_EXTENSION_UNAVAILABLE_IOS(" ");

以下の方法でさえも発射されません。

- (void)openURL:(NSURL*)url options:(NSDictionary<NSString *, id> *)options completionHandler:(void (^ __nullable)(BOOL success))completion { 
} 

このケースの処理方法は?どんな助けでも大歓迎です。

enter image description here

答えて

0

あなたのリンクはUITextViewに住んでいるなら、あなたはUITextViewDelegatetextView(_:shouldInteractWith:in:interaction:)機能を使用する必要があります。あなたの代理人は、UITextViewのリンクとのやりとりをキャッチすることができます。そして、ロジックを呼び出してURLを内部的に処理することができます。デリゲートメソッドからNOを返すと、iOSが適切なときにブラウザでURLを開くことができなくなります。