3

複数行の UILineBreakModeWordWrap モードで、UILabel を使用してテキストを表示します。最大幅は 200 です
。たとえば、次のテキストがあります。

最初の単語と 2 番目の単語に下線を引きたいのですが、助けてもらえますか?

そして、「最初の単語」と「2 番目の単語」に下線を引きたいと思います。

テキストが NSString の sizeWithFont メソッドを使用して単一行モードで表示されている場合、「最初の単語」の位置を簡単に計算してから、(void)drawTextInRect:(CGRect)rect をオーバーライドして線を描画できます。

しかし、複数行モードでは、位置を取得する方法がわかりません。何か考えはありますか?

4

2 に答える 2

6

iPhone で NSAttributedString が欠落していることについてかなりの議論があり、人々はこれを回避するために独自のテキスト レイアウト システムを構築し始めています。この分野で進行中のプロジェクトがいくつかあります。Three20 プロジェクトとそのTTStyledTextLabelをご覧ください。

于 2009-06-09T08:46:09.617 に答える
5

UIWebViewを使用してテキストを表示します。これは、Appleがリッチテキストに推奨するものです。

于 2009-06-08T10:02:52.120 に答える