मैंने UITextView के साथ एक नया रिक्त Single View Application बनाया है जिसमें लिंक https://example.com है।

मेरा ऐप चलाते समय, यह उस लिंक का स्वतः पता लगाता है और उसे नीला कर देता है। इस लिंक पर क्लिक करने पर यह एपल सफारी ब्राउजर में खुल जाता है।

मैं लिंक का पता कैसे लगा सकता हूं और सफारी पर रीडायरेक्ट करना बंद कर सकता हूं?

मैंने निम्नलिखित कोड की कोशिश की:

func webView(_ webView: UIWebView, shouldStartLoadWith request: URLRequest, navigationType: UIWebView.NavigationType) -> Bool {
    print("Link clicked!")
    return false
}

दुर्भाग्य से मुझे कंसोल में print("Link clicked!") नहीं मिल रहा है और यह अभी भी सफारी पर रीडायरेक्ट कर रहा है।

मैं क्या गलत कर रहा हूं?

1
David 9 पद 2018, 17:51

1 उत्तर

सबसे बढ़िया उत्तर

यह कोड यूआरएल को सफारी में खुलने से रोकेगा और कंसोल में लिंक प्रिंट करेगा:

import UIKit

class ViewController: UIViewController, UITextViewDelegate {

    @IBOutlet var myTextViewAction: UITextView!

    override func viewDidLoad() {
        super.viewDidLoad()
        myTextViewAction.delegate = self
    }

    func textView(_ textView: UITextView, shouldInteractWith URL: URL, in characterRange: NSRange, interaction: UITextItemInteraction) -> Bool {
        print("\nThis link was clicked: \(URL.absoluteString)\n")
        return false
    }
}
3
David 9 पद 2018, 19:32