强调在Android中持续替换的文本



这个问题的答案对我的文本非常有效...第一次。我有一些资源文件定义的字符串:

<string name="permission_replace">PERMISSION</string>
<string name="warn_permission">This app needs PERMISSION to work properly. Update in <u>settings</u>.</string>

第一次显示文本时,<u>标签正常工作,但是当我更换占位符("PERMISSION")时,下划线会丢失。这是我的替代方法:

warnPermissionText.setText(warnPermissionText.getText().toString().replaceAll(getString(R.string.permission_replace),"some permission text"));

如何通过替换保留下划线标签?还是我只需要编程地添加它们?我不确定第一次循环的格式是什么魔术。

每当您致电toString()时,您都在说:"嘿,摆脱我在那里的所有好格式"。

TextUtils类具有许多可以直接应用于CharSequence的实用程序方法,因此应保留格式。在您的情况下,至少对于简单的情况,replace()方法应起作用。

在您的特定情况下,如果将This app needs PERMISSION to work properly. Update in <u>settings</u>.更改为This app needs %s to work properly. Update in <u>settings</u>.并在getString()调用中提供%s的值。

,也可以使用getString()的N参数形式。

相关内容

  • 没有找到相关文章

最新更新