[英]Can't get height of Widgets
當獲取TextView的高度/寬度時,我面臨一個問題。
我的代碼:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView tv1 = (TextView)findViewById(R.id.textview1);
int h1 = tv1.getHeight();
TextView tv2 = (TextView)findViewById(R.id.textview2);
int h2 = tv2.getHeight();
}
h1是textview1的高度h2是textview2的高度
這些h1和h2始終等於0。
這是怎么了
請指教。
謝謝。
在對視圖進行測量之前, View.getWidth()/View.getHeight()
不會給您有意義的答案。 在此處閱讀有關android如何繪制視圖的信息。
請參閱此主題以了解何時可以使用測量的尺寸。
如果tv1.getHeight()尚未繪制,則將返回0(以及tv2.getWidth())。
解決方案是在布局視圖后獲取高度:
tv1.post(new Runnable(){
public void run(){
int height = tv1.getHeight();
}
});
tv2.post(new Runnable(){
public void run(){
int height = tv2.getHeight();
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.