android中padding和margin的理解


在android安排控件布局時,padding和margin經常被用到。

其具體解釋可以通過一張圖展現,如下,

兩個屬性表示的意義與web編程相同。

深入理解:

padding約束的是控件或布局顯示的內容距離邊框的距離,沿垂直邊框向內壓縮,padding越大,內容顯示控件越小;

margin這是沿垂直邊框向外延伸的距離, 它的意思就是給控件加了一個一定距離的空白邊,顯示效果只與值大小正負相關,與其他元素邊界無關。

值得注意的是,padding值的范圍[0,任意正數](默認為0),而margin的值則有正有負。

想理解負值,首先要理解0值,當margin=“0dip”時,控件外延擴展的邊為0,也就是邊界挨着其它邊緣;

margin>0,是給控件添加白邊,讓其外延變大,過大時會影響到整個控件顯示大小;

margin<0,一般用於單一方向顯示,也就是將該控件與其相鄰控件的距離是負值,從顯示效果講就是覆蓋某一方向上其它控件。

總言之,這兩個屬性是某個控件的屬性,控制的只是該控件的顯示,表示的意義也不牽扯父控件或其它相鄰控件,所以理解時要注意,不要混淆。

 

Start和End則是變化的相對概念,如下,
  1. paddingStart & paddingEnd 是根據左右對齊方式來起作用的(Level-API-17 )
  2. 左對齊時, paddingStart 對應 paddingLeft, paddingEnd 對應 paddingRight
  3. 右對齊時, 正好相反 

以上個人理解,轉載注明出處,多謝。

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM