1

私は iPhone 開発に不慣れで、アプリケーションのビューを作成する方法について質問があります。

ビューには、問題 (書式設定された/構文で強調表示されたテキストを使用) と複数の可能な回答が表示されます。ユーザーは回答をクリックして検証できる必要があります。

現在、UIWebView を contentView として埋め込んだ UITableView を使用しようとしています。これにより、書式設定されたテキストを簡単に表示できます。問題は、セルの高さを計算して調整するのが非常に面倒なことです。Web ビューをプリロードし、sizeToFit を呼び出し、高さを取得し、それに応じてセルを更新する必要があります。このプロセスは、問題と回答に対して行う必要があります (これらも HTML 形式のテキストであるため)。

あまりにも辛いので、他のものに変えようと思っています。大きな UIWebView だけを使用して、すべてを HTML で設計することを考えました。しかし、HTML ページと ObjectiveC コードの間で通信する方法を説明している記事をいくつか見ました。これには恐ろしいトリックも含まれているようです...

……そうなんだ、どうしたらいいのかわからない。私はあなたの何人かが以前にそのようなことを扱ったと思います、そしていくつかの非常にありがたいヒントを提供するでしょう:)

4

1 に答える 1

1

ここでの落とし穴は、iPhone APIがまだNSAttributedStringをサポートしていないため、テキストビューに表示するようにテキストを設定することはできないということです。

基本的に個々のUILabelを使用して各属性の実行を表す1つの回避策を見ました。(現在、リンクが見つかりません。)NSString UIKit拡張機能を使用してビュー上の文字列の位置を計算し、それを使用してラベルを配置しました。

もう1つの回避策は、属性を持つ文字列をUIImageに描画してから、画像を表示することです。それが私が思う最も簡単な解決策でしょう。

いずれの場合も、基本的に属性付き文字列のデータ構造を再作成する必要があります。

NSAttributedStringは私たちのために多くの仕事をします。それがなくなったとき、私たちは本当にそれが恋しいです。

于 2010-03-27T14:29:01.780 に答える