使用来自 R.strings 的图像路径扩展 Pageradapter 时出现异常

Exception when extends Pageradapter with image path from R.strings

我正在尝试对网站上的图片进行本地化。 我在本地化之前已经使用了 pageradapter。 我只是想将网络图像文件路径放在 R.string 上并将其放在 pageradapter 上。 但它会产生异常。

这是我的字符串(实际地址有点不同。)

http://~~~/content/2017/05/map.jpg

这是我在 pageradapter 中的代码。

public class ChangImageClass extends PagerAdapter{

LayoutInflater inflater;
OnlineImage on;
Context context;
private String changUrla =  "http://hanculture.org/content/2017/05/map.jpg";
private String changUrlab =  context.getString(R.string.Url);

在"private String changUrlab = context.getString(R.string.Url);"

处引起的异常

有没有人给我提示来解决这个问题? 我不确定 'R.strings' 未能传输图像路径源或其他错误。 (我几乎是 android 和 java..)

已更新异常日志。 05-05 22:05:32.143 14361-14361/org.android.changdeokgung W/System.错误:java.lang.NullPointerException 05-05 22:05:32.143 14361-14361/org.android.changdeokgung W/System.err: 在 org.android.changdeokgung.ChangImageClass.(ChangImageClass.java:33) 05-05 22:05:32.143 14361-14361/org.android.changdeokgung W/System.err: 在 org.android.changdeokgung.MultiusedImages.onCreate(MultiusedImages.java:311) 05-05 22:05:32.143 14361-14361/org.android.changdeokgung W/System.err: 在 android.app.Activity.performCreate(Activity.java:5231) 05-05 22:05:32.143 14361-14361/org.android.changdeokgung W/System.err: 在 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1092) 05-05 22:05:32.143 14361-14361/org.android.changdeokgung W/System.err: 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2166) 05-05 22:05:32.143 14361-14361/org.android.changdeokgung W/System.err: 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2252) 05-05 22:05:32.143 14361-14361/org.android.changdeokgung W/System.err: 在 android.app.ActivityThread.access$800(ActivityThread.java:142) 05-05 22:05:32.143 14361-14361/org.android.changdeokgung W/System.err: 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1203) 05-05 22:05:32.143 14361-14361/org.android.changdeokgung W/System.err: 在 android.os.Handler.dispatchMessage(Handler.java:102) 05-05 22:05:32.143 14361-14361/org.android.changdeokgung W/System.err: 在 android.os.Looper.loop(Looper.java:136) 05-05 22:05:32.143 14361-14361/org.android.changdeokgung W/System.err: 在 android.app.ActivityThread.main(ActivityThread.java:5068) 05-05 22:05:32.143 14361-14361/org.android.changdeokgung W/System.err: 在 java.lang.reflect.Method.invokeNative(本机方法)

试试这个

//you getting null object of context so you must set context
ChangImageClass pager = new ChangImageClass(getActivity());

    public class ChangImageClass extends PagerAdapter {

                //please assign your context

                LayoutInflater inflater;
                OnlineImage on;
                Context context;
                private String changUrla =  "http://hanculture.org/content/2017/05/map.jpg";
                private String changUrlab;
                public ChangImageClass(Context context){
                 this.context = context;
                 changUrlab =  context.getString(R.string.Url);
               }
    }

尝试

private String changUrlab =  context.getResources().getString(R.string.Url);