46

/res/values/strings.xml内に XML を配置できるかどうか疑問に思っていました。これは、アプリケーションの XML データ ファイルをチェックしているためです。まだ存在しない場合は、文字列リソースとして含まれるデフォルトのコンテンツから作成されます。

Eclipse は、GUI を使用して文字列を編集するときに、より小さいタグとより大きいタグを対応する HTML エンティティに変更しようとします。日食は正しい軌道に乗っていますか? HTMLエンティティとしてもファイルに書き出されると考える必要があるからです。エンティティをタグに戻すのgetText()ではなく、使用できますか?getString()

4

3 に答える 3

84

はい、できます。CDATA を使用してください

<string name="stringName1"><![CDATA[<html>bla</html>]]></string>

于 2010-12-20T13:36:19.360 に答える
2

< または > または & などの文字をエスケープしない限り、明らかに機能しません。

XML をエンコードした場合、問題なく動作するはずですが、おそらく最適な方法ではありません。私はバイナリリソースを好むでしょう。


string.xml に入れるために、次を使用してエンコードできます。

String encoded = URLEncoder.encode(xml);

そしてデコードはその逆です。

バイナリの場合は、RAW フォルダーに配置し、バイナリ ストリームを取得して文字列に変換し、読み込みます。

于 2010-12-20T13:31:24.697 に答える
2

私はこのようにしました:

文字列strings.xmlに入れます

<string name="my_string"><![CDATA[Your long text here]]></string>

使い方:

<TextView
    android:id="@+id/textView"
    android:text="@string/my_string"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />

終わり

于 2013-04-11T06:54:36.783 に答える