以下の内容はhttps://xyk.hatenablog.com/entry/2020/11/04/153046より取得しました。


Swift で UITextView のテキスト内のURLをリンク化する

検証環境:
Xcode 12
Swift 5.3

UITextView のテキスト内のURLをリンク化するには、isSelectableプロパティをtrue、そしてdataDetectorTypesプロパティに.linkを指定すればよい。
これでURL部分がリンク化され、リンクをタップすると Safari で開くようになる。

let textView = UITextView()
textView.text = "..."
textView.isEditable = false
textView.isSelectable = true
textView.dataDetectorTypes = [.link]

StoryBoard から設定する場合

f:id:xyk:20201104152854p:plain

表示例

f:id:xyk:20201104154843p:plain

http スキームがなくてもリンクとして検出された。


URL ではない任意の文字列をリンク化したい場合は以前書いたような UITextView のattributedTextlinkTextAttributesプロパティを設定してリンク化する方法がある。

xyk.hatenablog.com


ちなみに UILabel では UITextView と同じようなやり方はできず、自前で実装する必要がある。
同様の機能を実装した OSS が公開されているので、これらの使用を検討するとよいかも。

github.com

github.com




以上の内容はhttps://xyk.hatenablog.com/entry/2020/11/04/153046より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14