獲取控制項的寬高

2021-07-24 11:50:54 字數 833 閱讀 9482

很多時候,在oncreate方法裡面我們需要獲取控制項的寬高,但是常用的方法只能在onresume方法之後才能呼叫

在此,有三種方法可以在oncreate方法裡面獲取到空間的寬高

//方法一

int w = view.measurespec.makemeasurespec(0

,view.measurespec.unspecified

);int h = view.measurespec.makemeasurespec(0

,view.measurespec.unspecified

);imageview.measure(w, h);

int height = imageview.getmeasuredheight();

int width = imageview.getmeasuredwidth();

log.e("aaaa"

, height+","+width);

//方法二

viewtreeobserver vto = imageview.getviewtreeobserver();

vto.addonpredrawlistener(new viewtreeobserver.onpredrawlistener()

});//方法三

viewtreeobserver vto2 = imageview.getviewtreeobserver();

vto2.addongloballayoutlistener(new viewtreeobserver.ongloballayoutlistener()

});

獲取到的控制項的寬高的單位是dp

獲取控制項高寬

一般要獲取控制項的的高寬需要控制項已經顯示或者放在onpause,ondraw等畫圖裡面 我的操作如下,也是在網上學習過來的的,希望對搭建在開發中有點幫助 int w view.measurespec.makemeasurespec 0,view.measurespec.unspecified in...

Android 獲取控制項的寬高和位置

獲取控制項的絕對位置 包括狀態列 可以用這種方法,呼叫方法後,location 0 和location 1 就分別被賦值了。int location new int 2 view.getlocationonscreen location 獲取控制項的相對與當前視窗的位置可以用getlocationi...

獲取元素寬高

獲取元素寬高值 1.內聯樣式.element.style讀取的只是元素內聯樣式,即寫在元素的 style 屬性上的樣式,支援讀寫.var elebox document.getelementbyid eleid var h elebox.style.height 外聯樣式 巢狀樣式無法通過上述方法直...