java - ArrayAdapter java.lang.NullPointerException

标签 java android

我有这段代码,但应用程序在 setadapter 线上崩溃。 我真的不明白,因为我通过新的arrayadapter设置了adapter。

我尝试了其他方法,但没有一个有效!

顺便说一下,这段代码位于 Fragment 中,而不是 Activity 中!

那么你知道会发生什么吗?

public class Fragment_product_list extends Fragment{

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        final ListView listview = (ListView) getActivity().findViewById(R.id.list_product);
        String[] values = new String[] { "item1" , "item2" , "item3" , "item4" , "item5" , "item6" , "item7" };

        final ArrayList<String> list = new ArrayList<String>();
        for (int i = 0; i < values.length; ++i) {
            list.add(values[i]);
        }
        final ArrayAdapter adapter = new ArrayAdapter(getActivity(), android.R.layout.list_content , list);

        listview.setAdapter(adapter); /*app crash here*/
        }

        private class StableArrayAdapter extends ArrayAdapter<String> {

        HashMap<String, Integer> mIdMap = new HashMap<String, Integer>();

        public StableArrayAdapter(Context context, int textViewResourceId,
                              List<String> objects) {
        super(context, textViewResourceId, objects);
        for (int i = 0; i < objects.size(); ++i) {
            mIdMap.put(objects.get(i), i);
        }
    }

    @Override
    public long getItemId(int position) {
        String item = getItem(position);
        return mIdMap.get(item);
    }

    @Override
    public boolean hasStableIds() {
        return true;
    }
  }
}

谢谢!

最佳答案

fragment View 膨胀发生在onCreateView中。
我建议你看看这个 fragment example并阅读有关其生命周期的更多信息。

关于java - ArrayAdapter java.lang.NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21175231/

相关文章:

Android服务绑定(bind)麻烦

android - 如何通过导航 View 进行导航

android - 如何以编程方式更改操作栏菜单项的颜色

java - 将 TestFX 与 Cucumber 结合使用

java - 从自动生成的文本输出中删除第一行

java - 如何从 Intent (后台服务)引用 boolean 变量?

java - Android - 无法实例化 Activity

java - 如何在 XSLT 2.0 中获取当前 xml 文件名?

java - 当我尝试反序列化对象时出错

java - 抽屉导航旋转变化