未创建 Android listview 内容视图

Posted

技术标签:

【中文标题】未创建 Android listview 内容视图【英文标题】:Android listview content view not created 【发布时间】:2018-09-27 14:42:49 【问题描述】:

我有带有底部导航菜单的 android 活动。 当我单击底部导航栏上的一项时,列表片段显示在活动顶部。列表片段可以通过两种方式关闭。 1.点击活动(活动中的某处) - 这有效 2.单击另一项(不是初始化列表片段的项)

例如:我单击第 4 项,它会在活动顶部弹出小列表片段。 当我单击活动时,它会关闭列表片段。 但是当我点击第 1 项时,它会抛出“尚未创建内容视图”的错误

    @Override
public View onCreateView(LayoutInflater inflater,
                         ViewGroup container, Bundle savedInstanceState) 

            View view = inflater.inflate(R.layout.list_more_technician, container, false);
     return view;



@Override
public void onActivityCreated(Bundle savedInstanceState) 
    super.onActivityCreated(savedInstanceState);
   // ArrayAdapter adapter = ArrayAdapter.createFromResource(getActivity(),
     //       R.array.tech_array, android.R.layout.simple_list_item_1);
    Toast.makeText(getActivity(), "inside  of on activity created", Toast.LENGTH_SHORT).show();

    ArrayAdapter mBTAdapter = new ArrayAdapter<String>(getActivity().getApplicationContext(), android.R.layout.simple_list_item_1,getActivity().getResources().getStringArray(R.array.tech_array)) 

        @Override
        public View getView(int position, View convertView, ViewGroup parent) 
            View view = super.getView(position, convertView, parent);

            // Get the Layout Parameters for ListView Current Item View
            ViewGroup.LayoutParams params = view.getLayoutParams();

            // Set the height of the Item View
            params.height = 60;
            view.setLayoutParams(params);

            //TextView textView = (TextView) super.getView(position, convertView, parent);
            TextView tv = (TextView) view.findViewById(android.R.id.text1);
            tv.setVerticalScrollBarEnabled(true);
            tv.setTextColor(Color.DKGRAY);
            tv.setTextSize(15);
            //tv.setHeight(15);
             return view;
        
    ;
    setListAdapter(mBTAdapter);
    getListView().setOnItemClickListener(this);



【问题讨论】:

【参考方案1】:

尝试将getListView().setOnItemClickListener(this); 移动到onViewCreated

您能否尝试将您在适配器中设置项目的代码也移动到onViewCreated

【讨论】:

谢谢。我已将 getListView().setOnItemClickListener(this) 移至 onViewCreated。但收到错误“尚未创建内容视图” 您可以尝试将您在适配器中设置项目的代码也移动到onViewCreated 吗?

以上是关于未创建 Android listview 内容视图的主要内容,如果未能解决你的问题,请参考以下文章

带有“标签”的 Android ListView

ListView未出现在应用程序中

Android 5 中未显示 ListView 分隔符

从listView中删除项目仅删除最后一项未选择的元素android

按钮未显示在android的自定义列表视图中

android中的ArrayAdapter创建简单的listview