專案需要在ui中獲取其中乙個控制項的位置,在oncreate中直接獲取發現引數全為零,獲取失敗。網上查詢知道原來需要等到整個換麵載入完才可以獲取到位置資訊。特來記錄下以備以後查詢
獲取空間螢幕位置:
rect rect = new rect();
int location = new int[2];
mplaysu***ceview.getlocationonscreen(location); //獲取螢幕中位置
rect.left = location[0];
rect.top = location[1];
rect.right = rect.left + mplaysu***ceview.getwidth();
rect.bottom = rect.top + mplaysu***ceview.getheight();
ui載入完標誌:
isfirst = true;
@override
public void onwindowfocuschanged(boolean hasfocus)
做了isfirst標誌,記錄是否是新建的時候進入。
Android得到控制項在螢幕中的座標
計算該檢視在全域性座標系中的x,y值,注意這個值是要從螢幕頂端算起,也就是索包括了通知欄的高度 獲取在當前螢幕內的絕對座標 getlocationinwindow 計算該檢視在它所在的widnow的座標x,y值,獲取在整個視窗內的絕對座標 不是很理解 getleft gettop getbottom...
Android 獲取view在螢幕中的位置
getlocalvisiblerect 返回乙個填充的rect物件,感覺是這個view的rect大小,left,top取到的都是0 getglobalvisiblerect 獲取全域性座標系的乙個檢視區域,返回乙個填充的rect物件 該rect是基於總整個螢幕的 getlocationonscree...
Android 獲取view在螢幕中的位置
getlocalvisiblerect,返回乙個填充的rect物件,感覺是這個view的rect大小,left,top取到的都是0 getglobalvisiblerect,獲取全域性座標系的乙個檢視區域,返回乙個填充的rect物件 該rect是基於總整個螢幕的 getlocationonscree...