我与ArrayList中为groupItem和ArrayList的ExpandableListView为childItem:的ArrayList <Object>到ArrayList的<String>
public void setGroupData() {
groupItem.add("TechNology");
groupItem.add("Mobile");
groupItem.add("Manufacturer");
groupItem.add("Extras");
}
ArrayList<String> groupItem = new ArrayList<String>();
ArrayList<Object> childItem = new ArrayList<Object>();
public void setChildGroupData() {
/**
* Add Data For TecthNology
*/
ArrayList<String> child = new ArrayList<String>();
child.add("Java");
child.add("Drupal");
child.add(".Net Framework");
child.add("PHP");
childItem.add(child);
/**
* Add Data For Mobile
*/
child = new ArrayList<String>();
child.add("Android");
child.add("Window Mobile");
child.add("iPHone");
child.add("Blackberry");
childItem.add(child);
/**
* Add Data For Manufacture
*/
child = new ArrayList<String>();
child.add("HTC");
child.add("Apple");
child.add("Samsung");
child.add("Nokia");
childItem.add(child);
/**
* Add Data For Extras
*/
child = new ArrayList<String>();
child.add("Contact Us");
child.add("About Us");
child.add("Location");
child.add("Root Cause");
childItem.add(child);
}
我想要的if语句时,选择一个孩子来触发一个动作。然而childItem是一个对象,如果我把它这个样子,没有任何反应,当我按下“Java”的孩子:
if(childItem.get(childPosition).toString().equals("Java")){
iv.setImageResource(R.drawable.pic);
}
当我试图用groupItem这是它的工作一个字符串,但不是我想要的方式(不要紧,哪个项目我按内组“TechNology”它将工作)
if(groupItem.get(groupPosition).equals("TechNology")){
iv.setImageResource(R.drawable.pic);
}
我做错了什么,我该如何解决它?
我不明白你在建议什么:将所有元素添加到同一级别? –
它如何工作?他将得到一个ClassCastException。你得到的childItem是一个列表不是一个字符串 –
这段代码:如何将ArrayList