问题标签 [expandablelistview]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1994 浏览

android - 如何确定 ExpandableListView groupIndicator 图标的合适尺寸?

我正在开发一个涉及和 ExpandableListView 的应用程序。我们想用我们自己选择的一个替换 groupIndicator。

我为指示器创建了一个规范,该规范将根据选择器的状态(扩展或未扩展)显示不同的 png

然后我设置我的布局 xml 以使用:

(请注意,childDivider 是一个像素高的 png 而不是颜色,因为将其设置为颜色似乎有问题)

这可行,只是我们的图标是垂直拉伸的。这是有道理的,因为我们刚刚创建了一个 25x25 的图标并希望做到最好。我试图弄清楚本机图标的尺寸以便我可以匹配它,但这就是我遇到麻烦的地方。

挖掘源代码 (ExpandableListView.java) 我发现,默认情况下,该类将使用 com.android.internal.R.styleable.ExpandableListView_groupIndicator。所以我有一个 id,但还没有图标。

我很想能够做到:

但正如“内部”所暗示的那样,我在用户空间中看不到它。

我还在 ExpandableListView.java 中找到了 getIndicate(),但它是私有的,所以我也无法做到这一点。

我对深入研究平台源代码很陌生,我不知道如何追踪该图像。谁能帮我吗?

编辑:感谢CommonsWare。为其他人拼出其余的内容:

android:drawable/expander_group 在 /frameworks/base/core/res/res/drawable/expander_group.xml 中定义。
expander_group.xml 提到它使用@drawable/expander_ic_maximized 和@drawable/expander_ic_minimized。这些绘图可以在 /frameworks/base/core/res/res/drawable/expander_ic_maximized.9.png 和 /frameworks/base/core/res/res/drawable/expander_ic_minimized.9.png 以及其他特定密度的地方找到等等。“9”解释了为什么默认图标没有失真问题 - 它们是补丁 9 图形。与密度无关的图标版本为 34 像素 x 38 像素。

0 投票
2 回答
5432 浏览

android - 布局作为列表视图标题

我有一个包含两个列表的布局。由于您不能将列表放入 a 中,因此ScrollView我正在尝试根据此问题ExpandableListView使用带有自定义的. 列表布局:SimpleExpandableListAdapter

现在,当我尝试添加一些内容作为标题时,麻烦就来了。如果我从代码创建布局,它会起作用,如下所示:

如果我使用相同的布局,或者甚至比代码中的布局更简单,应用程序甚至在屏幕上显示之前就崩溃了。这是我想作为标题添加到上述列表的布局:

和代码:

我试图摆弄布局中所有组件的 layout_width 或 height,但它不起作用。最让我困惑的是,当它崩溃时,DDMS 上会说NullPointerException调用 setAdapter 时(当我使用代码中的布局时不会这样,并且它添加了适配器就好了):

所以,我的问题是:我在这里做错了什么?并且,以防万一,关于如何更好地做到这一点的任何建议?

0 投票
1 回答
2266 浏览

android - SimpleExpandableListAdapter 部分标题

我实现了我的SimpleExpandableListAdapter,我正在尝试自定义部分标题。为此,我将groupTo参数的自定义 ID传递给构造函数:TextView

问题是,什么都没有出现!整个东西都是空白的,好像视图不存在一样。关于为什么的任何想法,或者我可以阅读的任何链接来解决这个问题?谢谢!

0 投票
1 回答
979 浏览

android - 如何在 ExpandableList 中使用 ListView?

我一直在使用自定义 ExpandableList(见下面的示例图片),其中每个项目总是有一个孩子。这个孩子由三个部分组成。每个部分都有一个标题(红色条),下面是一个空项目或项目列表。此列表的长度会有所不同。

我尝试执行此操作的第一种方法是在空项目下方添加一个 ViewStub,我使用自定义视图对其进行膨胀,该视图最后还包含一个 ViewStub,我依次为下一个项目膨胀,从而递归地添加项目以创建这种项目列表。可悲的是,当列表变得太长时,这会导致 StackOverflowError(对于短列表,这非常有效)。

所以在我的第二次尝试中,我尝试使用带有自定义适配器的 ListView。可悲的是,这个列表只使用了我屏幕的一小部分,其余的项目被遮挡在下一部分的标题后面(这个迷你列表看起来可以滚动,因为旁边出现了第二个滚动条,但它没有滚动。不是我会认为在滚动列表中滚动是一个很好的解决方案,但只是想提一下)。

谁能告诉我如何告诉这个项目列表不可滚动并占用它需要的所有房间(它是否知道创建子节点时它将是什么大小??)或帮助我我的问题的替代解决方案?(哦,我考虑过在我的布局中放置大量的 ViewStub,但这看起来很愚蠢,而且非常糟糕。如果我错了,请纠正我)

替代文字

0 投票
2 回答
2430 浏览

android - 如何获取可在 Android 上绘制的 ExpandableListView 的组指示器的宽度?

如果我使用默认的组指示器(不设置新的),我如何知道组视图布局的填充宽度?

所以可以让我的布局不会与组指示器重叠。

那可能吗?因为我找不到getGroupIndicator的方法。或者我必须设置一个我知道它的大小的新的。

0 投票
2 回答
573 浏览

android - 如何创建一个活动的多个实例?- 重新审视

我想(ExpandbleList-)activity使用不同的参数启动相同的多个实例,因此在列表中加载了不同的数据。这些列表位于 a 的不同选项卡中TabActivity

到目前为止它可以工作,但是当我更新一个列表中的信息,然后返回到第二个列表并单击其中一个项目(或更改屏幕方向)时,该列表将重新填充另一个列表中的数据。

我怎样才能开始活动,以免它们相互干扰数据?

0 投票
2 回答
3806 浏览

android - Android可扩展列表,示例,错误

我试图让Android 开发人员的示例启动并运行。我使用第二个示例类。

从线:

我在eclipse中收到以下错误:

我真的是一个初学者,并且一直在努力制作一个超级简单的可扩展列表视图,但我一无所获。任何人?

导致错误的代码块:

编辑,更多代码..

ExpandableList1.java:


MyExpandableListAdapter.java:

}

0 投票
1 回答
357 浏览

android - GroupLongClick 上的 ExpandableListView

如何实现 onGroupLongClickListener?如果我使用 onItemLongClick 那么我只是得到列表视图看到的元素的位置,所以我需要将此位置转换为 groupposition 和 childposition

我怎样才能做到这一点?

0 投票
1 回答
548 浏览

android - ExpandableListView 列表项“按下”行为是否必须由开发人员连接?

我有一个使用包含 TextView、ImageButton 和 ExpandableListView 的布局的 Activity。据我所知,ExpandableListView 的组和子视图没有默认视图。因此,我提供给 ExpandableListView 的光标适配器是 CursorTreeAdapter 的子类,它覆盖 newGroupView() 和 newChildView()。组视图包含一个 TextView 和一个 ImageButton。子视图包含一个 TextView 和一个 RatingBar。

我需要做些什么特别的事情来 (1) 有这样的行为:按下列表中的组项目会导致项目的背景变成默认的 Android 黄色/橙色 (2) 让组扩展以在组项目时显示子项被按下。

我认为这两种行为是内置在 ExpandableListView 中的,不需要开发人员进行任何特殊的接线。这是不正确的吗?

谢谢。

0 投票
2 回答
958 浏览

android - 当提供的组视图不仅仅包含 TextView 时,如何保留 ExpandableListView 的默认列表项按下行为?

是否可以在提供不仅仅包含 TextView 的组视图时保留 ExpandableListView 的默认列表项按下行为。我指的行为是被按下的项目将背景颜色更改为黄色。

每次我提供一个包含例如 TextView 和 Button 的组视图时,我都会失去这种行为。