看板 AndroidDev 關於我們 聯絡資訊
開發層: 應用 問題: 如題,要怎麼讀取view在螢幕上顯示的座標 我弄了一個TextView (也有試過Button) 然後想要顯示他的座標 但我試過了 getLeft(),getTop(),getLocationOnScreen() 傳回值都是0 (另外也試過 getHight(), getWidth(), getMesureWidth()...也都是0..) 我在想是不是該TextView 的 onMeasure() onLayout還沒有結束 所以還沒辦法讀到座標 不知道又有什麼方法可以確定View以精確實配置在螢幕上 然後再去執行getLeft() 以便得知其座標 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.248.32
mamaya3:應該要等onLayout完才能確定位置吧 03/06 18:48
crazyma:恩恩 那有什麼方法可以確定onLayout跑完嗎 ~"~? 03/06 18:49
mamaya3:你override onLayout 那時的參數應該就有你要的資料了 03/06 18:52
JamesEX:View parent = (View)yourView.getParent(); 03/07 12:38
JamesEX:parent.post(new Runnable(){ 03/07 12:39
JamesEX:public void run() { 03/07 12:39
JamesEX:yourView.getHitRect(r) 03/07 12:40
JamesEX:這樣他就會que在parent結束後找rect 03/07 12:41
JamesEX:http://pastebin.com/99Dc75Qk 這樣比較清楚 03/07 12:48
crazyma:喔喔 感謝J大 趕快來試試看XD 03/07 15:35