Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Android中,如何将不同的字符串与xml中的另一个字符串拼接?_Android_String_Android Layout - Fatal编程技术网

在Android中,如何将不同的字符串与xml中的另一个字符串拼接?

在Android中,如何将不同的字符串与xml中的另一个字符串拼接?,android,string,android-layout,Android,String,Android Layout,我有一些字符串,需要在layout.xml中组合它们,最好的方法是什么 例如: 我有一个简单的login_layout.xml,它有许多行,其中一个文本视图作为标题,一个EditText作为带有提示的输入。现在我有四行输入,我应该在Strings.xml中定义8个字符串。如果我将来有更多的输入行。对于每个额外的输入行,我需要定义两个字符串 有什么方法可以让这变得简单吗 例如,我只为每个输入行定义一个字符串,对于提示,我可以在layout.xml中使用诸如:android:hint=“@strin

我有一些字符串,需要在layout.xml中组合它们,最好的方法是什么

例如:

我有一个简单的login_layout.xml,它有许多行,其中一个文本视图作为标题,一个
EditText
作为带有提示的输入。现在我有四行输入,我应该在
Strings.xml
中定义8个字符串。如果我将来有更多的输入行。对于每个额外的输入行,我需要定义两个字符串

有什么方法可以让这变得简单吗

例如,我只为每个输入行定义一个字符串,对于提示,我可以在layout.xml中使用诸如:
android:hint=“@string/please\u enter+@string/account”


帐户
密码
电子邮件
地址
请输入您的帐户
请输入密码
请输入电子邮件
请输入地址

对于这个问题,我知道我可以定义一个RecyclerView,并使用
getString(R.string.please_enter)+getString(R.string.account)
,但我的项目更复杂,它不能使用RecyclerView

来实现它

String please_enter = getResources().getString(R.string.please_enter);
String account = getResources().getString(R.string.account);

EditText etaccount;
etaccount = (EditText) findViewById(R.id.account);
etaccount.setHint(please_enter+" "+account);
除此之外,您还可以使用:


您可以使用字符串格式,如
string.format
。 像这样创建一个字符串资源

<string name="please_enter">Please enter %s</string>
getString
的语法类似于
String.format
。有关更多信息,请查看:

如果要使用数据绑定,可以按如下方式使用:

text="@{@string/please_enter(@string/password}"

如果我的项目不支持数据绑定,layout.xml还有其他更好的方法吗?@Infinity_zhang我不知道,无论是数据绑定还是通过java代码。如果我的项目不支持数据绑定,layout.xml还有其他更好的方法吗?@Infinity_zhang我发布了上面的方法,那么你必须对每个edittext都这样做。
<string name="password">password</string>
getString(R.string.please_enter, getString(R.string.password))
text="@{@string/please_enter(@string/password}"