本篇文章給大家分享的是有關(guān)Android中怎么利用oncreate獲取控件高度或?qū)挾?,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。
成都創(chuàng)新互聯(lián)專注于錦江企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè)公司,成都商城網(wǎng)站開發(fā)。錦江網(wǎng)站建設(shè)公司,為錦江等地區(qū)提供建站服務(wù)。全流程定制開發(fā),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,成都創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)
Android中oncreate中獲得控件高度或?qū)挾鹊膶?shí)現(xiàn)方法
onCreate函數(shù)只是提供了數(shù)據(jù)初始化的機(jī)會(huì),此時(shí)還沒(méi)有正式繪制圖形。在圖形尚未渲染的情況下,getWidth()或getHeight()得到的值為0。如果需要自適應(yīng)屏幕,需要一進(jìn)入界面就得到父控件大小,然后需要在onCreate中動(dòng)態(tài)設(shè)置子控件大小。
方法1:
利用ViewTreeObserver類的addOnPreDrawListener接口。
ViewTreeObserver vto = hscrollview.getViewTreeObserver(); vto.addOnPreDrawListener(newViewTreeObserver.OnPreDrawListener() { @Override publicboolean onPreDraw() { if(hasMeasured == false){ intwid = hscrollview.getWidth(); inthei = hscrollview.getHeight(); if(wid != 0 && hei != 0){ hasMeasured= true; } } returntrue; } });
方法2:
利用ViewTreeObserver類的addOnGlobalLayoutListener接口。
以上就是Android中怎么利用oncreate獲取控件高度或?qū)挾?,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。