首页 > 解决方案 > Android Studio 中的 R.id 是什么?

问题描述

我正在创建一个Fragment从中继承新片段的新片段。这些继承的(子)片段将设置一个包含ListView带有 id的布局"elements_list"

        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container,
                                 Bundle savedInstanceState) {
            return inflater.inflate(R.layout.fragment_orders, container, false);
        }

这是onViewCreated基本片段

@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);
        listView = view.findViewById(R.id.elements_list);

但是,java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.ListView.setAdapter(android.widget.ListAdapter)' on a null object reference当我尝试调用 on 方法时,我得到了listView,这意味着它没有找到ListViewwith id"elements_list"

那么什么是R.id,我是否可以只传递名称"elements_list"呢?

标签: javaandroid

解决方案


容器内的所有碎片必须由R.id.fragment_container

但是,如果您缺少 R 引用,也许一种解决方法是从 Android Studio 重建项目


推荐阅读