【发布时间】:2014-01-21 22:16:12
【问题描述】:
我有一种情况,到目前为止我还没有找到答案。我正在开发一个在两个不同片段中使用PopupWindow 的应用程序。这两个片段中的每一个都使用两个弹出窗口。所以总共有4个弹出窗口。有一个用于所有弹出窗口的视图。该视图有一个向上的箭头,需要指向被单击以打开弹出窗口的按钮,无论按钮在哪里。我尝试了getLocationOnScreen()、getX()、getLeft()、setX() 和setY() 的一些不同组合。据我了解,getLocationInWindow() 是唯一一个根据设备屏幕尺寸处理视图位置的方法。其他 4 个都基于视图的父级获取和设置值。由于单击打开弹出窗口的按钮和用于在弹出窗口中显示内容的视图具有不同的父级,因此 getX(),getLeft(),setX()andsetY() 导致为每个按钮设置不同的箭头位置。
我需要但尚未找到的方法是根据我从getLocationOnScreen() 获得的 x 和 y 坐标在弹出窗口中设置位置箭头图像。但是没有setLocationOnScreen()。
所以我需要一种方法来计算箭头的位置,以便它设置在单击的按钮下方,无论按钮在哪里或按钮的父级是什么。我确定有一种方法可以计算它,我只是不确定如何。
谁能帮我解决这个问题?
【问题讨论】: