android的字符串资源文件中大括号{}是什么意思?

What is the meaning of curly brackets { } in string resource file of android?

在片段导航中 codelabs 我发现在 string.xml

中的字符串标记中使用花括号 {}
<string name="word_list_fragment_label">Words That Start With {letter}</string>

在 运行 上,应用程序 {letter} 将替换为用户按下的任何字母按钮。 {letter} 指的是什么?

按照以下步骤操作:

第 1 步:将此字符串添加到您的 XML 文件中

<string name="word_list_fragment_label">Words That Start With &#123; %s &#125;</string>

第 2 步:在您的 activity 中执行如下设置文本:

yourTextView.text = String.format(getString(R.string.word_list_fragment_label),"Your text that you want to set")

{x} 被替换为导航参数中的值 x

这是 androidx-navigation 1.0.0 alpha 08 的“新”功能:

Destination labels, when used with NavigationUI methods, will now automatically replace {argName} instances in your android:label with the correct argument b/80267266

来源:https://developer.android.com/jetpack/androidx/releases/navigation(页面片段名称重复,因此不能 link 直接指向该版本)

Android 问题跟踪器:https://issuetracker.google.com/issues/80267266