5

I need to create a String using the Formater to display some double values in application. I'm not clear on how to code it. Here is what I have:

<string name="diseaseMessage">You have %s message, Unread %s</string>

i get this error:

error: Multiple substitutions specified in non-positional format; did you mean to add the formatted="false" attribute?  
error: Unexpected end tag string    strings.xml /TSMS Pro/res/values    line 70 Android AAPT Problem
DolDurma
  • 15,753
  • 51
  • 198
  • 377

1 Answers1

5
<string name="diseaseMessage">You have %1$s message, Unread %2$s</string>

From the Android docs:

Formatting strings

If you need to format your strings using String.format(String, Object...), then you can do so by putting your format arguments in the string resource. For example, with the following resource:

<string name="welcome_messages">Hello, %1$s! You have %2$d new messages.</string>

In this example, the format string has two arguments: %1$s is a string and %2$d is a decimal number. You can format the string with arguments from your application like this:

Resources res = getResources();
String text = String.format(res.getString(R.string.welcome_messages), username, mailCount);
Mr. Kevin Thomas
  • 837
  • 2
  • 13
  • 21