我一直在試圖在導航欄項目的片段內獲取一堆像圖庫的圖像。這裏的代碼是這樣的。如何在導航欄項目的片段內的gridview中添加圖像
public class ImageAdapter extends BaseAdapter { private Context context;
public Integer[] images = {
R.drawable.base1, R.drawable.base2,
R.drawable.base3, R.drawable.base2,
R.drawable.base1, R.drawable.base3,
};
public ImageAdapter(Context c) {
context = c;
}
@Override
public int getCount() {
return images.length;
}
@Override
public Object getItem(int position) {
return images(position);
}
private Object images(int position) {
return images(position);
}
@Override
public long getItemId(int position) {
return 0;
}
@Override
public View getView(int position, View ConvertView, ViewGroup parent) {
ImageView imageview = new ImageView(context);
imageview.setImageResource(images[position]);
imageview.setScaleType(ImageView.ScaleType.CENTER_CROP);
imageview.setLayoutParams(new GridView.LayoutParams(240, 240));
return imageview;
}
,並在主活動我已經將這個
GridView gridView = (GridView) findViewById(R.id.gridView);
gridView.setAdapter(new ImageAdapter(this));`
但每當我跑我的應用程序我得到這個錯誤。這裏是logcat的
8月7日至20日:34:49.974 4608-4608/com.example.android.navigation d/AndroidRuntime:關閉VM 8月7日至20日:34:49.975 4608-4608/COM .example.android.navigation E/AndroidRuntime:致命例外:main 進程:com.example.android.navigation,PID:4608 java.lang.RuntimeException:無法啓動活動ComponentInfo {com.example.android.navigation/com .example.android.navigation.MainActivity}:java.lang.NullPointerException:嘗試在android.app.ActivityThread的空對象引用 上調用虛方法'void android.widget.GridView.setAdapter(android.widget.ListAdapter)' .performLaunchActivity(ActivityT hread.java:2416) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) at android.app.ActivityThread.-wrap11(ActivityThread.java) at android.app.ActivityThread $ H.handleMessage(ActivityThread .java:1344) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:148) at android.app.ActivityThread.main(ActivityThread.java :5417) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:726) at co m.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 引發:java.lang.NullPointerException:嘗試調用虛擬方法'void android.widget.GridView.setAdapter(android.widget.ListAdapter)'上的空對象引用 在com.example.android.navigation.MainActivity.onCreate(MainActivity.java:32) 在android.app.Activity.performCreate(Activity.java:6237) 在android.app.Instrumentation.callActivityOnCreate (Instrumentation.java:1107) 在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369) 在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) 在android.app.ActivityThr ead.-wrap11(ActivityThread.java) at android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1344) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper .loop(Looper.java:148) at android.app.ActivityThread.main(ActivityThread.java:5417) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os。 ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:726) at com.android.internal.os.ZygoteInit.main(ZygoteInit。java:616)
注意:不要混淆圖像R.drawable.base123。我只寫了3個簡短。我在我的工作區中設置了20個圖像。
根據stacktrace,你的gridview是null。你有定義它嗎? –
如果我在主xml中定義gridview,那麼圖像也會出現在其他每個導航項目中。我希望不同的圖像出現在導航欄上單擊的不同項目上。 –