我想从res/string获取字符串源以在Pageradapter上使用。
正如许多帖子所说,我制作了这段代码。
public class DonImageClass extends PagerAdapter{
..........
private static Activity myactivity;
public DonImageClass(Activity myactivity){
this.myactivity = myactivity;
}
String imageSource = myactivity.getResources().getString(R.string.changUrla);
...........
但由于此句子,它返回空异常;
String imageSource = myactivity.getResources().getString(R.string.changUrla);
我怎样才能得到正确的答案?
我已经在这个问题上停留了一个多月。
它像这样抛出空点异常;
E/Android运行时:致命异常:main 流程:org.androidtown.realchangdeokgung,PID:4560 java.lang.RuntimeException:
不要将静态字段用于活动。
如果您绝对需要,请使用带有上下文的 SoftReference 而不是 Activity,并获取如下资源:
public class DonImageClass extends PagerAdapter{
..........
private SoftReference <Context> mContext;
public DonImageClass(Context context){
this.mContext = new SoftReference<Context>(context);
}
Context context = mContext.get();
if (context != null) {
String imageSource = context.getResources().getString(R.string.changUrla);
}
...........
你能描述一下你想做什么吗?我会尽力为您提供解决方案。
String imageSource = myactivity.getResources().getString(R.string.changUrla);
将其替换为下面的给定代码。
String imageSource = getResources().getString(R.string.changUrla);
请试试这个,我的朋友
getResources().getString(R.string.yourstring)
或使用
getApplicationContext().getResources().getString(R.string.yourstring)