【发布时间】:2016-08-21 05:00:57
【问题描述】:
当我的GridView 中的元素被点击时,我试图调用一个活动
它将在滑动活动中打开,并显示相应的图像,但我在设置时遇到错误
作为
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.union.project, PID: 2194
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.union.project/com.union.project.Swipeview.Main4Activity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.v4.view.ViewPager.setAdapter(android.support.v4.view.PagerAdapter)' on a null object reference
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2325)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387)
at android.app.ActivityThread.access$800(ActivityThread.java:151)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5254)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.v4.view.ViewPager.setAdapter(android.support.v4.view.PagerAdapter)' on a null object reference
at com.union.project.Swipeview.Main4Activity.onCreate(Main4Activity.java:26)
at android.app.Activity.performCreate(Activity.java:5990)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2278)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387)
at android.app.ActivityThread.access$800(ActivityThread.java:151)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5254)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
04-27 01:17:54.025 2194-2194/com.union.project I/Process: S
这是我在单击任何显示 toast 的项目时遇到的错误,但随后我的片段代码崩溃了
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view= inflater.inflate(R.layout.fragment_two, container, false);
GridView gridView=(GridView)view.findViewById(R.id.gridView2);
gridView.setAdapter(new UAdapter(getActivity()));
gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Toast.makeText(getActivity(),"Pic"+(position)+"Selected",Toast.LENGTH_SHORT).show();
Intent intent= new Intent(view.getContext(),Main4Activity.class);
intent.putExtra("pic",position);
startActivity(intent);
}
});
return view;
}
我的滑动视图代码`
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main4);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
viewPager =(ViewPager)findViewById(R.id.viewpager1);
adapter =new CustomeSwipeAdapter2(this);
viewPager.setAdapter(adapter);
viewPager.setCurrentItem(getIntent().getIntExtra("pic", 0));
}`
这是我想要开始的活动,但如果遇到错误,有人可以告诉我如何解决这个问题。
【问题讨论】:
-
阅读您的堆栈跟踪 -
android.util.AndroidRuntimeException: requestFeature() must be called before adding content。 -
正如你所说,我已经改变了,但我仍然遇到错误,请参阅编辑后的错误
-
谢谢大家解决了问题,这是我在滑动视图中的错误我设置了不同按钮和图像视图的 id 以寻求帮助
标签: android android-studio android-activity onitemclicklistener