Android 通过X和Y坐标获得一个小部件

Android 通过X和Y坐标获得一个小部件,android,drag-and-drop,expandablelistview,Android,Drag And Drop,Expandablelistview,好的,首先我不确定我做得是否正确,所以我将解释我想从我的应用程序中得到什么: 我有一个分为两部分的屏幕,左边是一个组列表(更具体地说是ExpandableListView),左边是各种各样的可拖动按钮。 我想让用户将每个按钮拖动到某个组中,然后将按钮文本添加为该组的子级 所以我试着使用(setOnTouchListener)将touchListener添加到每个按钮,并实现用户将其拖动到的位置,因此我现在有了用户释放btn的X和Y,我如何知道(X,Y)点上的列表项是什么 如果这是正确的方法呢 T

好的,首先我不确定我做得是否正确,所以我将解释我想从我的应用程序中得到什么:

我有一个分为两部分的屏幕,左边是一个组列表(更具体地说是ExpandableListView),左边是各种各样的可拖动按钮。 我想让用户将每个按钮拖动到某个组中,然后将按钮文本添加为该组的子级

所以我试着使用(setOnTouchListener)将touchListener添加到每个按钮,并实现用户将其拖动到的位置,因此我现在有了用户释放btn的X和Y,我如何知道(X,Y)点上的列表项是什么

如果这是正确的方法呢

Thx

编辑: 好的,为了更清楚,我添加了一个屏幕快照:


我要做的是将按钮拖动到列表中的某个项目上,并对所选项目进行处理(比如-重命名)

好的,我知道了-如果有人来过这里,我就是这样解决的- 迭代所有列表子项,并检查此p=(x,y)是否在hit rect中:

int count = draggTo.getChildCount();
for (int i = i; i < count; i--) {
    View child = draggTo.getChildAt(i);
    child.getHitRect(frame);
    if (frame.contains(x, y)) {
        return draggTo.getFirstVisiblePosition() + i;
    }
}
int count=draggTo.getChildCount();
对于(int i=i;i