2012-07-12 82 views
1

enter image description hereAndroid的检测ChildClick在ExpandableListView

这里是我的应用程序,其中一个特定条目的详细信息任何儿童被点击的ExpandableListView时,显示在右手边的屏幕截图。

用户可以在右侧编辑每个孩子的详细信息,并使用BackButton来保存详细信息。

现在,我想要实现的是,当用户点击另一个孩子时,对上一个条目所作的编辑也应该保存。

我没有附加我的代码,因为代码真的很长很复杂。为了简化问题,假设我将所有条目存储在名为“SlotList”的二维数组中,并且每当单击任何子对象时,我都会将该子对象的详细信息复制到对象中(名为CurrentSlot),并对数据成员执行编辑CurrentSlot。现在,当用户按下BackButton时,我通过SaveCurrentSlot(插槽对象)保存CurrentSlot的细节。

我想要做的是当用户点击ExpandableList中的另一个孩子时调用SaveCurrentSlot(Slot obj)。

任何关于我该怎么做的建议/提示?

在此先感谢。 :)

回答

2

我认为它更好地使用onChildClick方法为您的要求。

>>Basing on the child click position you can set data to layout right. 

使用这种方法

public boolean onChildClick(ExpandableListView parent, View v, int groupPosition,int childPosition,long id) { 
    System.out.println("Inside onChildClick at groupPosition = " + groupPosition +" Child clicked at position " + childPosition); 

    //ur code here 

    return true; 
} 

儿童单击的扩展列表视图访问this

+0

我知道我必须使用onChildClick更多细节。你不明白我的问题。我需要检测是否有其他孩子被点击过,而不是已经显示的孩子。 – Swayam 2012-07-12 10:57:20

+0

你可以用这个权利获得父母的位置和孩子的位置。那么这些价值对你无助于找到哪个孩子被点击了 – 2012-07-12 11:03:38

+0

是的。现在就开始工作了。谢谢。 :) – Swayam 2012-07-12 11:52:35