android– 使用x,y坐标查找布局

android– 使用x,y坐标查找布局,第1张

概述我的应用程序充满了Android的自定义按钮.我想允许用户重新排列这些按钮,如Home或Application面板的图像按钮.我对此进行了研究,发现我可以使用drag&删除与用户动作交互的功能.但在我的情况下,父布局可能会有所不同.在OnMove或OnDrop事件中,我需要在相应的布局中实际移动该按

我的应用程序充满了Android的自定义按钮.我想允许用户重新排列这些按钮,如Home或Application面板的图像按钮.

我对此进行了研究,发现我可以使用drag& amp;删除与用户动作交互的功能.但在我的情况下,父布局可能会有所不同.在OnMove或OnDrop事件中,我需要在相应的布局中实际移动该按钮.

所以问题是如何找到包含坐标x和amp;的布局. y并将按钮放入其中.

@OverrIDepublic boolean ontouchEvent(MotionEvent event) {    switch (event.getAction()) {    case MotionEvent.ACTION_DOWN:        status = START_DRAGGING;        break;    case MotionEvent.ACTION_UP:        status = Stop_DRAGGING;        break;    case MotionEvent.ACTION_MOVE:        if(status == START_DRAGGING){            //parentLayout.setpadding((int)event.getRawX(), 0,0,0);            //**What to do here**            parentLayout.invalIDate();        }                                   break;    }    return true;}

解决方法:

您可以遍历父容器中的所有控件,并将每个子节点与当前的X,Y进行比较.您可以通过调用以下内容来获取视图边界:

View.getHitRect()

所以像这样:

for(VIEw v : parent.children()){    // only checking VIEwGroups (layout) obvIoUsly you can change    // this to suit your needs    if(!(v instanceof VIEwGroup))        continue;    if(v.getHitRect().contains(x, y))        return v;}

这只是Psuedo代码,需要根据您使用的任何内容进行调整(即为嵌套控件添加递归).

希望有所帮助.

总结

以上是内存溢出为你收集整理的android – 使用x,y坐标查找布局全部内容,希望文章能够帮你解决android – 使用x,y坐标查找布局所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1115931.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存