4

クリック可能なテキストを含むことができるオブジェクトを作成しようとしています。

例:ユーザーに 「登録を受け入れる前に利用規約を確認してください」というテキストを表示しました。

「利用規約」のテキストだけをリンクとして表示したい。テキストには青の下線が引かれます。

ユーザーがテキストをクリックすると、利用規約のビューコントローラーページに移動します。したがって、リンクはアプリケーションの内部であり、外部のWebページではありません。

質問

  1. 特定のテキストをリンク可能にするだけでテキストを表示するにはどうすればよいですか?
  2. リンクされたテキストをクリックするユーザーを介してViewControllerページに「シーク」するにはどうすればよいですか?
4

1 に答える 1

4

TTTAttributedLabelを使用してこれを行うことができます。readmeファイルから:

リッチテキストのサポートに加えて、TTTAttributedLabelを使用すると、URL、アドレス、電話番号、および日付のリンクを自動的に検出したり、独自のリンクを埋め込んだりすることができます。

label.dataDetectorTypes = UIDataDetectorTypeAll; // Automatically detect links when the label text is subsequently changed
label.delegate = self; // Delegate methods are called when the user taps on a link (see `TTTAttributedLabelDelegate` protocol)

label.text = @"Fork me on GitHub! (http://github.com/mattt/TTTAttributedLabel/)"; // Repository URL will be automatically detected and linked

NSRange range = [label.text rangeOfString:@"me"];
[label addLinkToURL:[NSURL URLWithString:@"http://github.com/mattt/"] withRange:range]; // Embedding a custom link in a substring
于 2012-10-16T18:20:43.933 に答える