成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Android獲取LinearLayout寬高

企業(yè)動(dòng)態(tài)
有的時(shí)候,我們需要想獲取LinearLayout寬高,怎么辦?本文告訴大家,一起學(xué)習(xí)一下吧!

[[189862]]

有的時(shí)候,我們需要想獲取LinearLayout寬高

1.獲取LinearLayout寬高

  1. public void onCreate(Bundle savedInstanceState) { 
  2.      super.onCreate(savedInstanceState); 
  3.      LinearLayout ll = (LinearLayout) findViewById(R.id.layInfo); 
  4.     Log.i("w", ll.getWidth()+"L"+ll.getHeight()); 

你會(huì)發(fā)現(xiàn)打印出來(lái)是0

那是因?yàn)樵趏nCreate方法的時(shí)候LinearLayout還并沒(méi)有繪制完成,所以獲取的高度均為0,

或者試著把這段代碼放到onResume()方法中去,依然是0。

如果我們用獲取LinearLayout的寬高

可以通過(guò)定時(shí)器不斷的監(jiān)聽(tīng)LinearLayout的寬高,等繪制完成后,關(guān)閉定時(shí)器即可。

  1. final Handler handler= new Handler(){ 
  2.          @Override 
  3.          public void handleMessage(Message msg) { 
  4.             if(msg.what == 1) { 
  5.                 if(ll.getWidth()!=0) { 
  6.               Log.i("w", ll.getWidth()+"L"+ll.getHeight()); 
  7.                      timer.cancel(); 
  8.  
  9.                 } 
  10.             }   
  11.          } 
  12.      }; 
  13.      timer = new Timer(); 
  14.      TimerTask task = new TimerTask(){ 
  15.          public void run() {   
  16.              Message message = new Message();  
  17.              message.what = 1;  
  18.              myHandler.sendMessage(message);   
  19.              }   
  20.          };    
  21.         timer.schedule(task,10,1000);   
  22.  } 

類(lèi)似,如果想在Activity啟動(dòng)后立即彈出PopupWindow,我們知道,

在Activity的onCreate()方法中直接寫(xiě)彈出PopupWindow方法會(huì)報(bào)錯(cuò),因?yàn)閍ctivity沒(méi)有完全啟動(dòng)是不能彈出PopupWindow。

我們可以嘗試用兩種方法實(shí)現(xiàn):

2.用onWindowFocusChanged方法

  1. @Override 
  2. public void onWindowFocusChanged(boolean hasFocus) { 
  3.  super.onWindowFocusChanged(hasFocus); 
  4.  showPopupWindow(); 

3.用Handler和Runnable,延時(shí)

  1. @Override 
  2. protected void onCreate(Bundle savedInstanceState) { 
  3.  super.onCreate(savedInstanceState); 
  4.  setContentView(R.layout.main); 
  5.  mHandler.postDelayed(mRunnable, 1000); 
  6. private Runnable mRunnable = new Runnable() { 
  7.  public void run() { 
  8.   showPopupWindow(); 
  9.  } 
  10. }; 

這樣獲取LinearLayout寬高問(wèn)題就解決了。

【本文為51CTO專(zhuān)欄作者“洪生鵬”的原創(chuàng)稿件,轉(zhuǎn)載請(qǐng)聯(lián)系原作者】

戳這里,看該作者更多好文

責(zé)任編輯:武曉燕 來(lái)源: 51CTO專(zhuān)欄
相關(guān)推薦

2024-06-19 08:32:13

2021-09-26 08:35:17

Android控件寬高

2025-06-26 08:24:11

AndroidView尺寸消失術(shù)

2024-08-27 11:12:31

2011-12-27 10:18:31

Web

2016-12-07 10:32:14

移動(dòng)應(yīng)用開(kāi)發(fā)底部導(dǎo)航android

2012-11-07 13:53:07

電源高功率低密度

2014-04-08 16:02:28

寬字節(jié)注入數(shù)據(jù)安全MYSQL

2013-03-28 13:27:14

Android獲取屏幕

2022-06-22 09:06:54

CSS垂直居中代碼

2011-05-07 11:03:01

輕博客寬島

2011-06-02 09:51:05

Android 手機(jī)

2015-10-12 11:19:35

墨跡天氣引導(dǎo)界面android

2015-02-06 18:29:09

仿滴滴打車(chē)android

2016-06-06 00:51:55

北京移動(dòng)寬帶中國(guó)銳捷

2021-12-02 08:41:30

數(shù)倉(cāng)建模設(shè)計(jì)

2010-03-02 10:36:05

Android窗體

2014-08-21 10:39:54

Android開(kāi)源庫(kù)獲取途徑

2011-04-21 15:38:05

Dalvik高斯林Android

2012-05-07 13:41:18

JavaScript
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 91国产精品 | 国产精品成人在线 | 精品国产亚洲一区二区三区大结局 | 日韩欧美在线播放 | 日本一区二区三区精品视频 | 黄网站在线播放 | 精品国产一区二区三区久久狼黑人 | 久久99蜜桃综合影院免费观看 | 国产成人在线一区二区 | 中文字幕 国产 | 精品国产伦一区二区三区观看体验 | 国产日韩精品一区 | 一区二区三区欧美 | 亚洲精品免费在线 | 日韩欧美一级精品久久 | 911影院| 精品美女视频在线观看免费软件 | 亚洲一区亚洲二区 | 日韩欧美国产精品综合嫩v 一区中文字幕 | 日日操视频 | 久久91 | 欧美a在线 | 亚洲毛片| 香蕉久久a毛片 | 亚洲精品视频一区二区三区 | 99re热精品视频 | 91香蕉| 国产95在线| 中文字幕日韩一区 | 午夜精品久久久久久久久久久久 | 91在线观看视频 | 国产成人精品一区二区三 | 色中文在线 | 97精品超碰一区二区三区 | 天天操天天操 | 日韩成人在线观看 | 黄色网址在线免费播放 | 久久香蕉网 | 成人免费观看男女羞羞视频 | 中文字幕在线看 | 日韩成人免费av |