Я хотел бы знать, есть ли способ вставить/вставить элемент , определенный в файле XML, в другой элемент <string>
, делая это только с XML.Android: Как вставить элемент <string> в другой <string> элемент в XML?
Например, я мог бы:
<string name="author">Francesco</string>`
и я ищу что-то вроде:
<string name="about_application">Author: @string/author</string>`
так, что getString(R.string.about_application)
приведет к "Автор: Франческо".
Я знаю, что я мог бы объединить эти два элемента в Java-код с помощью String.format(string, formatArgs)
, как, например:
<string name="author">Francesco</string>
<string name="about_application">Author: %1$s</string>`
, а затем в использовании кода
String.format(getString(R.string.about_application), getString(R.string.author))
, но я хотел бы сделать это в XML непосредственно.
Может ли кто-нибудь предложить мне способ сделать это?
Спасибо! Он хорошо работает, когда я ссылаюсь на внутренний объект из элемента xml в том же файле, в то время как у меня возникают проблемы с ссылкой на внешний объект, определенный в другом XML-файле. Во всяком случае, я не уверен, должен ли этот механизм использоваться с файлами Android/res/values / xml, я думаю, что он немного далек от «стандартного» способа Android управлять ими. –
Это похоже на косвенную направленность сверху :-). Проблема может заключаться в том, что при переводе string.xml (копии в другие папки) вы забыли локализовать &auth;. Кроме того, каждый перевод по-прежнему нуждается во всех строковых тегах, содержащих &auth;. Но да, это лучше всего, потому что оно должно быть статическим (поэтому файлы xml можно сделать двоичными). – pjv