使用场景:
在非activity中,却需要获取string.xml内的字符值时
(如ViewModel层,既不是activity也不是fragment)
使用步骤:
- 在需要获取文本的类中写入构造方法,传入参数context
- 在activity中初始化该类
- 使用context.getString()获取文本
这三步执行完后,在activity调用该类初始化后,就可以获取string.xml中String的内容啦
具体操作:
第一步
QuestionViewModel.java
QuestionViewModel(Context context){
mContext = context;
}
第二步
QuizActivity.java
mQuestionViewModel = new QuestionViewModel(this);
第三步
QuestionViewModel.java
mQuestionText = mContext.getString(R.string.question_australia);
参考思路:
https://bbs.csdn.net/topics/391840924
https://blog.csdn.net/great999xiao/article/details/52859893