android – 将片段添加到listview项目中

android – 将片段添加到listview项目中,第1张

概述我想为listview中的每个项目创建一个片段,因为我想将一些逻辑分开.我正在为每个项目使用视图持有者.如果视图不存在,我创建一个新片段并将其添加到容器中. holder.mMyFragment = new MyFragment(mActivity, this);mActivity.getSupportFragmentManager().beginTransaction().add(R.id.m 我想为ListvIEw中的每个项目创建一个片段,因为我想将一些逻辑分开.我正在为每个项目使用视图持有者.如果视图不存在,我创建一个新片段并将其添加到容器中.
holder.mMyFragment = new MyFragment(mActivity,this);mActivity.getSupportFragmentManager().beginTransaction().add(R.ID.my_container,holder.mMyFragment).commit();

同样对于每个项目,我调用holder.mMyFragment.setUi(dataSource,position)来根据数据源和位置设置片段的UI.

我遇到的问题是我在片段类的onCreateVIEw方法中初始化片段的UI元素,但是当我将片段添加到项目时它不会被调用.所以后来当我调用setUi()使用片段中的一些UI元素时,它会抱怨NullPointerException.有人有建议吗?谢谢!

解决方法
I want to have a fragment for each item in a ListvIEw,because I want to separate some logic out.

您不能将片段用作列表项视图,因为API不允许您 – 视图和片段甚至不相关,因此您无法像这样使用它.制作自定义视图并使用适配器getVIEwTypeCount和getVIEw来使用不同的列表项行为.

片段由Activity的FragmentManager或其他Fragments子FragmentManager管理;列表项视图由ListVIEw&管理. listadapter.您可以在片段中使用ListVIEw,但不能反过来使用.

总结

以上是内存溢出为你收集整理的android – 将片段添加到listview项目中全部内容,希望文章能够帮你解决android – 将片段添加到listview项目中所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/1137015.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-30
下一篇2022-05-30

发表评论

登录后才能评论

评论列表(0条)

    保存