Android布局中margin與padding的區(qū)別及說明
margin與padding的區(qū)別及說明
我們知道Android開發(fā)不僅僅有代碼的動態(tài)控制,而且還涉及到布局的靜態(tài)搭建(xml)。
幾乎在每一個xml文件中,我們總會看到margin和padding這兩個屬性,今天讓我們初步探究一下它們之間的區(qū)別。
首先為了便于說明,我們先畫一個三層布局,如下圖。
這里布局的意思是廣義的,泛指View等等。
padding的含義
在日常英語中,padding的含義為“墊料”,“襯料”等。
在Android布局中,padding意味著該屬性所在的主控件中內(nèi)部布局(子控件)的邊距。
如上圖,當我們設(shè)置布局2的padding屬性時,其實影響的是在其內(nèi)部的布局3與布局2的距離,其中黑線表示paddingLeft的具體的左邊距值。
當上下左右padding值都相等時,可以用padding代替這四個。
即:
android:paddingLeft = “10dp” android:paddingRight = “10dp” android:paddingTop = “10dp” android:paddingBottom = “10dp”
與
android:padding = “10dp”
是等價的。
margin的含義
margin與padding屬性恰恰相反。
在Android布局中,margin意味著該屬性所在的主控件里外部布局(父控件)的邊距。
如上圖,當我們設(shè)置布局2的margin屬性時,其實影響的是在其外部的布局1與布局2的距離,其中黑線表示layout_marginLeft的具體的左邊距值。
同理,當上下左右margin值都相等時,可以用margin代替這四個。
即:
android:marginLeft = “10dp” android:marginRight = “10dp” android:marginTop = “10dp” android:marginBottom = “10dp”
與
android:margin = “10dp”
也是等價的。
margin與padding的相對性
我們回頭再來看看這張布局圖,思考一個問題:
在布局2中設(shè)置padding和在布局3中設(shè)置margin的效果是相同的嗎?
5分鐘過去了。。我們來看一下實例演示:
padding:
margin:
其實android布局中有許多屬性都是具有相對性的,這次就先說這么多~!
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
android自定義開關(guān)控件-SlideSwitch的實例
本篇文章主要介紹了android自定義開關(guān)控件-SlideSwitch的實例,實現(xiàn)了手機控件開關(guān)的功能,感興趣的小伙伴們可以參考一下。2016-11-11Android Studio中統(tǒng)一管理版本號引用配置問題
這篇文章主要介紹了Android Studio中統(tǒng)一管理版本號引用配置問題,需要的朋友可以參考下2018-01-01Android便攜式熱點的開啟狀態(tài)檢測和SSID的獲取方法
WIFI熱點的開啟狀態(tài)和開啟后的SSID如何獲取呢?接下來通過本文給大家分享Android便攜式熱點的開啟狀態(tài)檢測和SSID的獲取方法,需要的朋友參考下吧2017-01-01Android動態(tài)給ViewPager添加Indicator導(dǎo)航
這篇文章主要為大家詳細介紹了Android動態(tài)給ViewPager添加Indicator導(dǎo)航的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-02-02簡單實現(xiàn)Android讀取網(wǎng)絡(luò)圖片到本地
這篇文章主要為大家詳細介紹了如何簡單實現(xiàn)Android讀取網(wǎng)絡(luò)圖片到本地的方法,感興趣的小伙伴們可以參考一下2016-08-08Android應(yīng)用圖標上的小紅點Badge實踐代碼
本篇文章主要介紹了Android應(yīng)用圖標上的小紅點Badge實踐代碼,具有一定的參考價值,有興趣的可以了解一下2017-07-07Android使用SoundPool實現(xiàn)播放音效
這篇文章主要為大家詳細介紹了Android使用SoundPool實現(xiàn)播放音效,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-11-11