Androidのstring.xmlでの%1 $ s、%1 $ dなどの使用



Usage 1 S 1 D Etc



少し普通の感じですが……。

img_af7d3e93f8290c0954744d9ee36f6e41.jpedingdang.jpg

それでも直接来る



%n $ ms:出力文字列を表し、nは最初のパラメータを表し、mの値を設定して、出力の前にスペースを配置します。
%n $ md:出力を整数として表し、nは最初のパラメーターを表し、mの値を出力の前に配置できます。
%n $ mf:出力が浮動小数点数であることを表します。nは最初のパラメーターを表します。mの値は、m = 4.5など、小数点以下の桁数を制御するように設定できます。出力形式は00.00です。

テスト

  1. 家を出てから残り%1 $ s分
    ..。
    String temp = getResources()。getString(R.string.loading)
    TimeTip string = String.Format(temp 38)
    結果:仕事から残り38分
  1. 職場から残り%1 $ 3秒
    ..。
    String temp = getResources()。getString(R.string.loading)
    TimeTip string = String.Format(temp 38)
    結果:仕事から残り38分
    注:mは1スペースのみで3に設定されます
  1. 職場から残り%1 $ 3秒
    ..。
    String temp = getResources()。getString(R.string.loading)
    TimeTip string = String.Format(temp 38)
    結果:仕事から残り38分
    注:mは8スペースで10に設定されます
  1. 仕事から家に帰るまで残り%1 $#4秒
    ..。
    String temp = getResources()。getString(R.string.loading)
    TimeTip string = String.Format(temp:60)
    結果:アプリがクラッシュし、例外がスローされます:java.lang.RuntimeException:アクティビティを開始できませんComponentInfo {com.samson.test / com.samson.test.TestActivity}:java.util .FormatFlagsConversionMismatchException:%sは '#をサポートしていません'
    注:%sは設定をサポートしていません#
  1. 職場から残り%1 $ 4d分
    ..。
    String temp = getResources()。getString(R.string.loading)
    TimeTip string = String.Format(temp 38)
    結果:仕事から残り38分
    注:mは2つのスペースで4に設定されます

6.職場から残り%1 $ 3.3f分
..。
String temp = getResources()。getString(R.string.loading)
TimeTip string = String.Format(temp 123321.1234567)
結果:仕事から残り123321.123分
注:mは3.3に設定されており、小数点以下の桁数は3桁のみです。