常見錯(cuò)誤及解決方法:
NullPointerException:如果在調(diào)用 getLocationOnScreen() 方法時(shí)出現(xiàn) NullPointerException 錯(cuò)誤,可能是因?yàn)?View 對(duì)象還沒有被添加到界面上,或者 View 對(duì)象已經(jīng)被移除了。解決方法是確保 View 對(duì)象已經(jīng)被添加到界面上,并且在調(diào)用 getLocationOnScreen() 方法之前進(jìn)行判空檢查。
IllegalArgumentException:如果傳遞給 getLocationOnScreen() 方法的參數(shù)不正確,可能會(huì)出現(xiàn) IllegalArgumentException 錯(cuò)誤。例如,傳遞的數(shù)組長度不足,或者傳遞的數(shù)組為 null。解決方法是確保傳遞正確的參數(shù)給 getLocationOnScreen() 方法。
想要獲取 View 在屏幕中的位置,可以使用 getLocationOnScreen() 方法。該方法返回的是 View 左上角在屏幕中的坐標(biāo)位置,包括狀態(tài)欄的高度??梢酝ㄟ^以下方式獲取 View 在屏幕中的位置:
int[] location = new int[2];
view.getLocationOnScreen(location);
int x = location[0];
int y = location[1];
通過以上方式可以獲取到 View 在屏幕中的 x 和 y 坐標(biāo)位置。