在我的应用程序中,我想在导航抽屉的片段中使用一个gridView,但我的应用程序正在崩溃。这是我的代码:
public class HomeFragment extends Fragment { GridView gridView; private String[] categoryHomeGridView; private Integer[] icon={R.drawable.cat_offer_women,R.drawable.cat_offer_men, R.drawable.cat_offer_food_and_drink,R.drawable.cat_offer_electronics}; private ArrayList homeGridViewItems; private HomeGridViewListAdapter adapter; public HomeFragment(){} @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_home, container, false); init(); return view; } private void init() { // TODO Auto-generated method stub gridView=(GridView) getActivity().findViewById(R.id.homeGridView); categoryHomeGridView=getActivity().getResources().getStringArray(R.array.category_array); homeGridViewItems=new ArrayList(); homeGridViewItems.add(new HomeGridViewItem(categoryHomeGridView[0], icon[0])); homeGridViewItems.add(new HomeGridViewItem(categoryHomeGridView[1], icon[1])); homeGridViewItems.add(new HomeGridViewItem(categoryHomeGridView[2], icon[2])); homeGridViewItems.add(new HomeGridViewItem(categoryHomeGridView[3], icon[3])); // iconHomeGridView.recycle(); adapter=new HomeGridViewListAdapter(getActivity().getApplicationContext() ,homeGridViewItems); gridView.setAdapter(adapter); } }
03-26 14:50:56.524: E/AndroidRuntime(2355): FATAL EXCEPTION: main 03-26 14:50:56.524: E/AndroidRuntime(2355): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.couponoffer/com.example.couponoffer.MainActivity}: java.lang.NullPointerException 03-26 14:50:56.524: E/AndroidRuntime(2355): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2059) 03-26 14:50:56.524: E/AndroidRuntime(2355): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2084) 03-26 14:50:56.524: E/AndroidRuntime(2355): at android.app.ActivityThread.access$600(ActivityThread.java:130) 03-26 14:50:56.524: E/AndroidRuntime(2355): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1195) 03-26 14:50:56.524: E/AndroidRuntime(2355): at android.os.Handler.dispatchMessage(Handler.java:99) 03-26 14:50:56.524: E/AndroidRuntime(2355): at android.os.Looper.loop(Looper.java:137) 03-26 14:50:56.524: E/AndroidRuntime(2355): at android.app.ActivityThread.main(ActivityThread.java:4745) 03-26 14:50:56.524: E/AndroidRuntime(2355): at java.lang.reflect.Method.invokeNative(Native Method) 03-26 14:50:56.524: E/AndroidRuntime(2355): at java.lang.reflect.Method.invoke(Method.java:511) 03-26 14:50:56.524: E/AndroidRuntime(2355): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786) 03-26 14:50:56.524: E/AndroidRuntime(2355): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553) 03-26 14:50:56.524: E/AndroidRuntime(2355): at dalvik.system.NativeStart.main(Native Method) 03-26 14:50:56.524: E/AndroidRuntime(2355): Caused by: java.lang.NullPointerException 03-26 14:50:56.524: E/AndroidRuntime(2355): at fragments.HomeFragment.init(HomeFragment.java:57) 03-26 14:50:56.524: E/AndroidRuntime(2355): at fragments.HomeFragment.onCreateView(HomeFragment.java:34) 03-26 14:50:56.524: E/AndroidRuntime(2355): at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:829) 03-26 14:50:56.524: E/AndroidRuntime(2355): at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1035) 03-26 14:50:56.524: E/AndroidRuntime(2355): at android.app.BackStackRecord.run(BackStackRecord.java:635) 03-26 14:50:56.524: E/AndroidRuntime(2355): at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1397) 03-26 14:50:56.524: E/AndroidRuntime(2355): at android.app.Activity.performStart(Activity.java:5017) 03-26 14:50:56.524: E/AndroidRuntime(2355): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2032) 03-26 14:50:56.524: E/AndroidRuntime(2355): ... 11 more
将这一行GridView=(GridView)getActivity().findViewById(r.id.HomeGridView);
放置在onCreate中,并像下面这样做,因为您的GridView是视图的一部分。或者将View视图传递给init();
像这样:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_home, container, false);
init(view);
return view;
}
private void init(View rootView) {
// TODO Auto-generated method stub
gridView=(GridView) rootView.findViewById(R.id.homeGridView);
categoryHomeGridView=getActivity().getResources().getStringArray(R.array.category_array);
homeGridViewItems=new ArrayList();
homeGridViewItems.add(new HomeGridViewItem(categoryHomeGridView[0],
icon[0]));
homeGridViewItems.add(new HomeGridViewItem(categoryHomeGridView[1],
icon[1]));
homeGridViewItems.add(new HomeGridViewItem(categoryHomeGridView[2],
icon[2]));
homeGridViewItems.add(new HomeGridViewItem(categoryHomeGridView[3],
icon[3]));
// iconHomeGridView.recycle();
adapter=new HomeGridViewListAdapter(getActivity().getApplicationContext()
,homeGridViewItems);
gridView.setAdapter(adapter);
}
我有以下代码,试图在ListView中创建一个简单的ListAdapter(我以前使用过这段代码,这是我唯一更改内容的地方): 当单步执行时,什么都不会发生,但当运行时,我在ChoreoGrapher中得到了一个null点异常。doCallbacks,当我创建一个空的数组列表时,它不会崩溃: 什么是编舞,为什么它会使我的应用程序崩溃? 我完全被困在可能的问题上,或者如何找出问题所在。Eclipse
我是android和java的新手,我试着从教程中创建一个android的导航抽屉屏幕: http://www.androidhive.info/2013/11/Android-Sliding-Menu-Using-Navigation-Drawer/ 我复制了代码,我的代码中有一些活动可以很好地工作,但现在我尝试添加导航抽屉活动到我的应用程序,但它在启动时崩溃。我的menifest文件是这样的:
我正在尝试将图像添加到我新创建的应用程序中。但是,当我运行我的应用程序时,它会崩溃。我没有在我的应用程序中编写任何代码,因此我提供了XML代码和错误日志。我在以前的应用程序中使用了ImageViews。没有错误。我已经优化了我的图像,但它仍然给我错误。 图像详细信息 错误日志: 09-08 16:03:02.266 15137-15137/ooper.loopE/AndroidRuntime: F
我试图在Android Studio中建立一个OTP系统,我想出了下面给出的代码,然而,每次我尝试将OTP发送到我的电话号码时,应用程序都崩溃了。代码如下: Signp3RDClass.java
在以前的代码上,谁医生帮了我 现在,android应用程序在我的手机上运行时崩溃了,这是错误日志 第一个问题是在我用相机扫描二维码后,它不能显示在二维码的结果进入 第二个问题是,我从存储器中选择了一个QRcode图像,然后点击确认,它崩溃了 下面是我认为的问题 类型不匹配:推断的类型是Uri?但乌里是意料之中的 冗余SAM构造函数 'onRequestPermissionsResult(Int,数
我是新的Android。我试图将FB登录与我的Android应用程序集成。我已经按照developers.facebook.com的所有说明进行了集成。然而,当我试图运行我的应用程序时,它会在发布时崩溃。 请注意,我的AndroidManifest.xml中已经有Facebook应用程序ID、元数据标签和android活动标签。 布局如下: 以下是my LoginActivity的代码片段: 以下