2009-09-17 5 views
5

UITextViewでリッチテキストを表示できるのかどうか疑問に思っていましたか?私は、テキストの異なる部分の異なるアライメントのように、読み込み専用のテキストに簡単な書式を設定したいと思っています。もしそうでなければ、私はどのようなビューを使うべきですか?UITextViewリッチテキスト?

答えて

2

一般的に、これを行う最も良い方法は、UIWebViewを使用してローカルのコンテンツを読み込んで、タグなどを挿入できる場所に置くことです。ローカルロードは速くなければなりません。どのようなユーテックスのようにもスタイルを設定できます。

UILabelサブクラスを代わりに使用し、Three20オープンソースコードを取得することもできます。 TTStyledTextLabelが必要です。

+0

私はその場でHTMLを生成してビューに読み込むことができますか? –

+0

はい、あなたはそれを生成し、いつでもロードすることができます。html文字列を生成するコードを書くだけです。 – coneybeare

2

これは誰でもこれをしようとする人のためのコードスニペットです - uiwebviewを使用してスタイル付きテキストを処理します - あなたのローカルjsファイルを動作させることは厄介です。ビルド段階 - >ソースのコンパイル - >にアクセスし、htmlコンテンツにローカルにアクセスするjsファイルを追加してください。あなたはまた、あなたのwebview上の客観的なcからの文字列をjavascriptとして評価することができます。

NSString *someHtmlContent = [NSString stringWithFormat:@"<html><head><style type=\"text/css\">body {padding: 0px; margin: 0px; }</style><script src=\"yourLocalJsFile.js\"></script></head><body></body></html>", dynamicText]; 

NSLog(@"HTML with code: \n%@", someHtmlContent); 

NSString *resourcePath = [[[[NSBundle mainBundle] resourcePath] 
           stringByReplacingOccurrencesOfString:@"/" withString:@"//"] 
           stringByReplacingOccurrencesOfString:@" " withString:@"%20"]; 

[MyWebView loadHTMLString:someHtmlContent baseURL:[NSURL URLWithString: 
              [NSString stringWithFormat:@"file:/%@//", resourcePath]]]; 

[self.MyWebView setDelegate:self]; 

設定デリゲートみましょうあなたはリンクの処理方法を決定 - あなたがそれらをモバイルサファリにしたり、WebViewの

1

あなたはgithubの上EGOTextViewプロジェクトを見てすることができますで開くようにしたいです。

"UITextViewの置き換えが完全に終了し、 リッチテキスト編集のサポートが追加されました。"

+0

リンクはhttps://github.com/enormego/EGOTextViewです。 – Andy

関連する問題