Android 在可展开的listview上添加了两个子项
我在添加子项时遇到问题,当我添加一个子项时,ui上会出现两个具有相同子项位置的子项。我的问题与以下问题中提到的问题类似 但是找不到解决办法。。请看我的密码 子项的值是使用此二维数组给出的Android 在可展开的listview上添加了两个子项,android,duplicates,expandablelistview,expandablelistadapter,Android,Duplicates,Expandablelistview,Expandablelistadapter,我在添加子项时遇到问题,当我添加一个子项时,ui上会出现两个具有相同子项位置的子项。我的问题与以下问题中提到的问题类似 但是找不到解决办法。。请看我的密码 子项的值是使用此二维数组给出的 String[][] child = { mContext.getResources().getStringArray(R.array.alerts), mContext.getResources().getStringArray(R.array.alerts),
String[][] child = {
mContext.getResources().getStringArray(R.array.alerts),
mContext.getResources().getStringArray(R.array.alerts),
mContext.getResources().getStringArray(R.array.alerts),
mContext.getResources().getStringArray(R.array.alerts),
mContext.getResources().getStringArray(R.array.alerts) };
我用了这个:
@Override
public int getChildrenCount(int groupPosition) {
return child.length;
}
但是对于这个,子计数是5,它显示了10个项目。看起来你是硬编码的子位置,比如
@Override
public int getChildrenCount(int groupPosition) {
return 1;
}
应该在哪里您的\u数据\u收集\u大小
还有,你有硬编码的childId
@Override
public long getChildId(int groupPosition, int childPosition) {
return 0;
}
应该是childPosition
而不是0
如果您还有任何疑问/问题,您可以下载并检查我的,如果以后有任何疑问,您可以返回给我。我遇到了完全相同的问题,结果是因为我在OnGroupClickListener的onGroupClick方法中返回了false。以下是一个解决方案:
@Override
public boolean onGroupClick(ExpandableListView parent, View v, int position, long id) {
// ... do stuff //
return true; // make sure you return true.
}
感谢您的回复。请查看我添加的部分,以显示我如何为儿童提供数据,而不是查看我的演示示例,并尝试自己解决您的问题。另外,您还没有更新pastebin中显示的代码。感谢示例代码对我起了作用。问题是我没有引用当前对象,因此添加了重复视图。我知道您可能只缺少代码中的某些内容,所以我坚持要演示。因为对我来说,检查你的完整代码并找出问题是不可行的。我还有一个疑问,如果我在子布局中有多个文本视图,并且需要识别所有视图上的唯一单击,那么通过在onclick中切换ID,方法将可以或需要任何其他解决方法