Android ViewModel数据绑定string.xml

时间:2018-04-02 20:52:32

标签: android mvvm

问题是 @ {@ string / ingredient_item(ingredient.toString())} 是如何工作的?

 <data>
 <variable name="ingredient" type="com.acme.recipes.database.entity.IngredientEntity"/>
</data>
<TextView android:layout_width="match_parent"
          android:layout_height="wrap_content"
          android:padding="8dp"
          android:text="@{@string/ingredient_item(ingredient.toString())}"
          tools:text="\u2022  1 cup of flour" />

String.xml

<string name="ingredient_item">\u2022  %1$s</string

为什么有%1 $ s?

1 个答案:

答案 0 :(得分:0)

首先向我们解释一下你的&#34; IngredientEntity&#34;类?

第二,如果你愿意知道%1 $ s 是什么? - &GT; Check here

哪个解释: -

  

%[指数] $ [类型]

索引复制您传递给它的索引 - &gt;这只是1 [因为你只传了1个参数。]

@{@string/ingredient_item(ingredient.toString())}

类型在此复制您要格式化的类型 - &gt; s 表示字符串

最后,你的字符串数字表示子弹。

  

•= \ u2022,●= \ u25CF,○= \ u25CB,▪= \ u25AA,■= \ u25A0,□=   \ u25A1,►= \ u25B