Your last click was on Now, whe...">

Reference string resource from code

I have a string declared in strings.xml:

<string name="last_msg">Your last click was on</string> 

Now, when someone clicks the button, I want the textview to display this line with a space, and then the value of the variable, which is a timestamp.

Unfortunately, using @ string / last_msg does not work, and I'm not sure how to do it correctly, so I am not hard-coded in the content.

Here is my code for the onClick function:

 public void showMsgNow(View view) { TextView lastMsg = (TextView)findViewById(R.id.textView2); long currentTimeStamp = System.currentTimeMillis(); lastMsg.setText(@string/last_msg + " " + currentTimeStamp); } 

I'm new, any help would be great!

+6
source share
5 answers

I found the answer on Google:

 getString(R.string.last_msg) 
+11
source

you cannot access String directly @ , for this you need to have a context resource and then just do this ...

 lastMsg.setText(context.getResources().getString(R.string.last_msg) + " " + currentTimeStamp); 

in your case use

 <string name="last_msg">Your last click was on %1$s</string> 

implementation:

 public void showMsgNow(View view) { TextView lastMsg = (TextView)findViewById(R.id.textView2); long currentTimeStamp = System.currentTimeMillis(); lastMsg.setText(context.getResources() .getString(R.string.last_msg, currentTimeStamp)); } 
+10
source
 // getString is method of context if (this instanceof Context) //If you are in Activity or Service class lastMsg.setText(getString(R.string.last_msg)+ " " + currentTimeStamp); else //you need to context to get the string lastMsg.setText(getString(mContext,R.string.last_msg)+ " " + currentTimeStamp); public String getString(Context mContext, int id){ return mContext.getResources().getString(id); } 
+6
source

use the line below

  lastMsg.setText(getString(R.string.last_msg) + " " + currentTimeStamp); 
+2
source

Try the following:

 lastMsg.setText(R.string.last_msg + " " + new SimpleDateFormat(d-MM-YYYY).format(new Date())); 
0
source

Source: https://habr.com/ru/post/916335/


All Articles