片段内 Listview 中动态视图的 onClick 侦听器

Posted

技术标签:

【中文标题】片段内 Listview 中动态视图的 onClick 侦听器【英文标题】:onClick listener for dynamic view in Listview inside Fragment 【发布时间】:2014-01-05 14:20:06 【问题描述】:

我有以下按钮在片段中的问题:

我的自定义适配器在我的列表视图中抛出了一行。该行有一个(删除)按钮。 当用户单击该行中的按钮时,该行被删除(他的按钮也是如此,duh)。我在一项活动中完美地工作。但是,这在 Fragment 中是如何工作的?

如果我在 onCreateView 中使用 findViewbyId,它会崩溃,因为视图根本不存在。 xml 中的 onClick 也不是一个选项,它不适用于片段。

我应该可以在某个地方放置一个 onClick 侦听器并能够使用 adapter.remove 将其删除。但是放置在哪里以及它看起来像什么?

【问题讨论】:

【参考方案1】:

如果我理解您所说的正确,您应该从适配器内将onCLickListener 添加到按钮。

【讨论】:

这帮助了我。我在自定义 ArrayAdapter 中添加了 onClickListener。我加了一个祝酒词,发现单击删除按钮有效。但是,行的真正删除发生在活动方法中。为了解决这个问题,我使用了一个回调和接口,由this *** post 指导【参考方案2】:

使用 onViewCreated() ..它在 onCreateView 之后调用,当返回的视图被添加时。

【讨论】:

以上是关于片段内 Listview 中动态视图的 onClick 侦听器的主要内容,如果未能解决你的问题,请参考以下文章

Android App 在片段中创建 ListView 引用时关闭

当 listview 行项目中包含隐藏视图时,片段不尊重匹配父高度

方向/配置更改后如何维护 ListView 片段状态?

动态 TextView 未在片段中更新

在 ListView 中动态添加 LinearLayout

从片段更新ListView适配器内的TextView