60

私はこのAndroid XML で複数の文字列を連結する方法を調べますか? そして最後にこんなコメントが。

For clarity, Its works:

<string name="title">@string/app_name</string>.アンジェイ・ドゥシ

独自の例を作成しましたが、機能しません。Andrzejが間違っているか、コードで何か間違ったことをしています。

R.strings.bbb含まれている必要があります"bbb aaa" が、代わりに"bbb aaa"含まれています"bbb @strings/aaa"

<string name="aaa">aaa</string>
<string name="bbb">bbb @strings/aaa</string>

クエリ:

ソースコードを変更せずに、xml でのみ連結を行うことは可能ですか?

この文字列を使用するため、コードで編集したくない理由xml/preferences.xml

例えば:

<ListPreference android:key="key_bbb" android:title="@string/bbb"....

私が何を意味するか知っているなら、ここではこのようなものを使用する可能性はありません

String title = res.getString(R.string.title, appName);
4

11 に答える 11

20

XML のみではこれは不可能ですが、Java コードを使用するとString.format()メソッドを使用できます。

<string name="aaa">aaa</string>
<string name="bbb">bbb %1$s</string>

Java コードで

String format = res.getString(R.string.bbb);
String title = String.format(format, res.getString(R.string.aaa));

したがって、タイトルは 2 つの文字列を連結した後の完全な文字列になります。

于 2012-05-02T10:42:22.363 に答える
16

いいえ、連結できないと思います。

<string name="aaa">aaa</string>
<string name="bbb">bbb @string/aaa</string>

出力 - bbb @string/aaa

もしあなたがそうするなら、

<string name="aaa">aaa</string>
<string name="bbb">@string/aaa bbb</string>  -> This won't work it
                                                      will give compilation error

@string/aaa bbbここでは、存在しない参照を持つ文字列を検索するためです。

あなたの場合の問題は、あなたがどこで使う@strings/aaaべきかでした@string/aaa

于 2012-05-02T10:26:45.077 に答える
0

複数の文字列値を追加する場合は、このようにしてください

                        <TextView
                        ..........
                        android:text='@{String.format("%s %s","+91", userInfo.mobile)}'
                        .............. />
于 2021-08-25T10:08:07.613 に答える
-3

いいえ。ただし、concat 関数を使用した xslt ファイルでは可能です。

<html>
      <body>
        <ul>
          <xsl:for-each select="stock">
            <xsl:if test="starts-with(@symbol, 'C')">
              <li>
                <xsl:value-of select="concat(@symbol,' - ', name)" />
              </li>
            </xsl:if>
          </xsl:for-each>
        </ul>
      </body>
    </html>

http://www.java2s.com/Tutorial/XML/0100__XSLT-stylesheet/concatfunction.htm

于 2016-10-06T21:20:16.493 に答える