Java 获取ExpandableList Android中视图的唯一标识符

Java 获取ExpandableList Android中视图的唯一标识符,java,android,map,expandablelistview,Java,Android,Map,Expandablelistview,我想创建一个ArrayList或Map来保存childView的选中状态。然而,为了做到这一点,我需要一个唯一的标识符为每个视图 我尝试了view.getId(),但列表中的每一行都返回-1。 我试过childPosition,但每个小组都会重复 例如: A1=0 A2=1 B1=0 我唯一看到的是groupPosition和childPosition的组合,除非其他人知道其他的东西。那么,有没有办法创建一个包含两个独立整数的可访问索引的映射或数组列表 或者是一种组合childPositio

我想创建一个ArrayList或Map来保存childView的选中状态。然而,为了做到这一点,我需要一个唯一的标识符为每个视图

我尝试了view.getId(),但列表中的每一行都返回-1。 我试过childPosition,但每个小组都会重复

例如:

  • A1=0
  • A2=1
  • B1=0
我唯一看到的是groupPosition和childPosition的组合,除非其他人知道其他的东西。那么,有没有办法创建一个包含两个独立整数的可访问索引的映射或数组列表


或者是一种组合childPosition和groupPosition以获得一个唯一标识符的方法,我可以为每个childView使用该标识符?

一种组合两个整数的方法

String identifier = groupPosition + "-" + childPosition;
//which is the id of
HashMap<String, boolean> checkedElements = new HashMap<String, boolean>();
String标识符=groupPosition+“-”+childPosition;
//哪个是你的身份证
HashMap checkedElements=新HashMap();

恐怕没有什么神奇的东西。

一种合并两个整数的方法

String identifier = groupPosition + "-" + childPosition;
//which is the id of
HashMap<String, boolean> checkedElements = new HashMap<String, boolean>();
String标识符=groupPosition+“-”+childPosition;
//哪个是你的身份证
HashMap checkedElements=新HashMap();

恐怕没有什么神奇的东西。

一种合并两个整数的方法

String identifier = groupPosition + "-" + childPosition;
//which is the id of
HashMap<String, boolean> checkedElements = new HashMap<String, boolean>();
String标识符=groupPosition+“-”+childPosition;
//哪个是你的身份证
HashMap checkedElements=新HashMap();

恐怕没有什么神奇的东西。

一种合并两个整数的方法

String identifier = groupPosition + "-" + childPosition;
//which is the id of
HashMap<String, boolean> checkedElements = new HashMap<String, boolean>();
String标识符=groupPosition+“-”+childPosition;
//哪个是你的身份证
HashMap checkedElements=新HashMap();

恐怕没有什么神奇之处。

也许您可以使用静态方法
View.generateView()像那样:
yourView.setId(View.generateViewId())


并同时将此id放入
ArrayList

也许您可以使用静态方法
View.generateView()像那样:
yourView.setId(View.generateViewId())


并同时将此id放入
ArrayList

也许您可以使用静态方法
View.generateView()像那样:
yourView.setId(View.generateViewId())


并同时将此id放入
ArrayList

也许您可以使用静态方法
View.generateView()像那样:
yourView.setId(View.generateViewId())


同时把这个id放到你的
数组列表中

我今晚就试试这个。谢谢。我今晚就试试这个。谢谢。我今晚就试试这个。谢谢。我今晚就试试这个。谢谢。我唯一的问题是,我需要将视图的选中状态(布尔值)添加到ArrayList或Map中,并使用唯一的索引再次访问它,我可以使用给定的信息重新创建索引。如果标识符是一个字符串,我不能在我的Map或ArrayList中使用它作为索引。我是新手,没有意识到这可以用HashMap来完成。我唯一的问题是我需要将视图的选中状态(布尔值)添加到ArrayList或Map中,并有一种方法可以使用唯一的索引再次访问它,我可以使用给定的信息重新创建索引。如果标识符是一个字符串,我不能在我的Map或ArrayList中使用它作为索引。我是新手,没有意识到这可以用HashMap来完成。我唯一的问题是我需要将视图的选中状态(布尔值)添加到ArrayList或Map中,并有一种方法可以使用唯一的索引再次访问它,我可以使用给定的信息重新创建索引。如果标识符是一个字符串,我不能在我的Map或ArrayList中使用它作为索引。我是新手,没有意识到这可以用HashMap来完成。我唯一的问题是我需要将视图的选中状态(布尔值)添加到ArrayList或Map中,并有一种方法可以使用唯一的索引再次访问它,我可以使用给定的信息重新创建索引。如果标识符是一个字符串,我不能在我的Map或ArrayList中使用它作为索引。我是新手,没有意识到这可以用HashMap来完成。我会看看这对我是否有效。