0

我在android中有一个弹出窗口任何人都可以说我在android屏幕中的X和Y位置意味着它是指屏幕窗口还是指弹出窗口的按钮。这是我的代码

       int[] location = new int[2];
            Object position = null;
            Object currentRowId = position;
            View currentRow = v;    

            v.getLocationOnScreen(location);


            Point point = new Point();
            point.x = location[0];
            point.y = location[1];



       PopupWindow changeStatusPopUp = new PopupWindow(context);
       changeStatusPopUp.setContentView(layout);
       changeStatusPopUp.setWidth(165);
       changeStatusPopUp.setHeight(LinearLayout.LayoutParams.WRAP_CONTENT);
       changeStatusPopUp.setFocusable(true);


       int OFFSET_X = -80;
       int OFFSET_Y = 50;


       changeStatusPopUp.setBackgroundDrawable(new BitmapDrawable());


       changeStatusPopUp.showAtLocation(layout, Gravity.NO_GRAVITY, p.x + 
                   OFFSET_X, p.y + OFFSET_Y);
4

2 回答 2

0

它指的是你在哪里弹出窗口。例如,如果 B 表示地址 100,那么表达式 B+5 将表示地址 105。表达式中的 5 是偏移量

于 2014-06-24T07:45:17.963 回答
0

X,Y 偏移量是相对于锚点视图所属的窗口而言的。您的偏移量需要相对于锚点在其窗口中的位置。您可以使用getWindowVisibleDisplayFrame检索锚点的位置

于 2014-06-24T07:48:18.797 回答