Android布局中match_parent和fill_parent的區別

來源:互聯網
上載者:User

今天在做項目的一個新功能的時候,從網上尋找資源,發現android2.2中出現的MATCH_PARENT感到不明白,過去只有FILL_PARENT和WRAP_CONTENT那麼match_parent到底是什麼類型呢?


經過一番研究發現,從Android 2.2開始FILL_PARENT改名為MATCH_PARENT ,從API Level為8開始我們可以直接用MATCH_PARENT來代替FILL_PARENT,他們的定義本質是一樣均為-1,只是換了個別名,可能為了更準確些,比如最終在SDK中的定義為:


fill_parent   -1  The view should be as big as its parent (minus padding). This constant is deprecated starting from API Level 8 and is replaced by match_parent. 
match_parent   -1 The view should be as big as its parent (minus padding). Introduced in API Level 8. 
wrap_content   -2  The view should be only big enough to enclose its content (plus padding). 


從Android 2.2開始fill_parent改名為match_parent,從API Level 8可以直接用match_parent來代替fill_parent,不過2.2以後的版本fill_parent仍然可以使用,他們的含義都是一樣的,都是填滿整個父視窗


三個屬性都用來適應視圖的水平或垂直大小,一個以視圖的內容或尺寸為基礎的布局比精確地指定視圖範圍更加方便。


1)fill_parent


設定一個構件的布局為fill_parent將強制性地使構件擴充,以填充布局單元內儘可能多的空間。這跟Windows控制項的dockstyle屬性大體一致。設定一個頂部布局或控制項為fill_parent將強制性讓它布滿整個螢幕。


2) wrap_content


設定一個視圖的尺寸為wrap_content將強制性地使視圖擴充以顯示全部內容。以TextView和ImageView控制項為例,設定為wrap_content將完整顯示其內部的文本和映像。布局元素將根據內容更改大小。設定一個視圖的尺寸為wrap_content大體等同於設定Windows控制項的Autosize屬性為True。


3)match_parent
   Android2.2中match_parent和fill_parent是一個意思 .兩個參數意思一樣,match_parent更貼切,於是從2.2開始兩個詞都可以用。那麼如果考慮低版本的使用方式你就需要用fill_parent了

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.