android:layout_gravity=quot;topquot;,android:layout_gravity和gravity的区别
文章轉自http://blog.csdn.net/shakespeare001/article/details/784346,給出了很詳細的解釋。
1.首先來看看Android:layout_gravity和android:gravity的使用區別。
android:gravity:
這個是針對控件里的元素來說的,用來控制元素在該控件里的顯示位置。例如,在一個Button按鈕控件中設置如下兩個屬性,
android:gravity="left"和android:text="提交",這時Button上的文字“提交”將會位于Button的左部。
android:layout_gravity:
這個是針對控件本身而言,用來控制該控件在包含該控件的父控件中的位置。同樣,當我們在Button按鈕控件中設置android:layout_gravity="left"屬性時,表示該Button按鈕將位于界面的左部。
2.屬性值:
這兩個屬性可選的值有:top、bottom、left、right、center_vertical、fill_vertical、center_horizontal、fill_horizontal、center、fill、clip_vertical。
一個屬性可以包含多個值,需用“|”分開。其含義如下:
top
將對象放在其容器的頂部,不改變其大小.
bottom
將對象放在其容器的底部,不改變其大小.
left
將對象放在其容器的左側,不改變其大小.
right
將對象放在其容器的右側,不改變其大小.
center_vertical
將對象縱向居中,不改變其大小.
垂直對齊方式:垂直方向上居中對齊。
fill_vertical
必要的時候增加對象的縱向大小,以完全充滿其容器.
垂直方向填充
center_horizontal
將對象橫向居中,不改變其大小.
水平對齊方式:水平方向上居中對齊
fill_horizontal
必要的時候增加對象的橫向大小,以完全充滿其容器.
水平方向填充
center
將對象橫縱居中,不改變其大小.
fill
必要的時候增加對象的橫縱向大小,以完全充滿其容器.
clip_vertical
附加選項,用于按照容器的邊來剪切對象的頂部和/或底部的內容. 剪切基于其縱向對齊設置:頂部對齊時,剪切底部;底部對齊時剪切頂部;除此之外剪切頂部和底部.
垂直方向裁剪
clip_horizontal
附加選項,用于按照容器的邊來剪切對象的左側和/或右側的內容. 剪切基于其橫向對齊設置:左側對齊時,剪切右側;右側對齊時剪切左側;除此之外剪切左側和右側.
水平方向裁剪
我們主要來看看center_vertical和center_horizontal兩個屬性值,center_vertical是指將對象在垂直方向上居中對齊,即在從上到下的方向上選擇中間的位置放好;center_horizontal是指將對象水平方向上居中對齊,即在從左到右的方向上選擇中間的位置放好。
3.特殊情況
當我們采用LinearLayout布局時,有以下特殊情況需要我們注意:
(1)當 android:orientation="vertical"? 時, android:layout_gravity只有水平方向的設置才起作用,垂直方向的設置不起作用。即:left,right,center_horizontal 是生效的。
(2)當 android:orientation="horizontal" 時,
android:layout_gravity只有垂直方向的設置才起作用,水平方向的設置不起作用。即:top,bottom,center_vertical 是生效的。
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
android:layout_width="100dip"
android:layout_height="100dip"
android:layout_gravity="bottom|center_horizontal"
android:gravity="center|bottom"
android:background="#00FF00"
android:text="@string/textview"
/>
android:layout_width="100dip"
android:layout_height="100dip"
android:layout_gravity="bottom|left"
android:gravity="left|top"
android:background="#FF0000"
android:text="@string/button"
/>
其效果如圖:
在TextView中,我們設置了android:layout_gravity="bottom|center_horizontal"
,但該TextView并沒有顯示在屏幕的下方正中央,表明只有center_horizontal屬性起了作用,這正是因為我們使用了LinearLayout布局,并且其android:orientation="vertical",只有水平方向的設置才會起作用,其他方向則會失效。同樣,Button也一樣。
Android中layout_gravity和gravity的區別
安卓中的 layout_gravity 屬性和 gravity屬性 有啥區別? LinearLayout有兩個非常相似的屬性: android:gravity與android:layout_gravi ...
Android中的layout_gravity和gravity的區別
在Android的布局中,除了padding和margin容易弄混之外,還有layout_gravity和gravity.按照字面意思來說,layout_gravity就是相對于layout來設置的. ...
AS中layout_gravity與gravity的區別
gravity 這個英文單詞是重心的意思,在這里就表示停靠位置的意思. android:layout_gravity 和 android:gravity 的區別 從名字上可以看到,android:gr ...
Android Layout_Gravity和Gravity
簡單來說layout_gravity表示子控件在父容器的位置,gravity表示控件內容在控件內的位置. 上面圖片的xml代碼 <?xml version="1.0" enc ...
layout_gravity與gravity的區別
1:android:gravity 這個是針對控件里的元素來說的,用來控制元素在該控件里的顯示位置. 2:android:layout_gravity 這個是針對控件本身而言,用來控制該控件在包含該控 ...
layout_gravity和gravity的區別
受不了了,用一遍查一遍...根本記不住,來這里記錄一下 layout_gravity是子view相對于父view的位置,比如說,在button中設置了layout_gravity="cent ...
layout_gravity與gravity的區別,和padding margin的區別
https://blog.csdn.net/github_39688629/article/details/77790541
android:gravity 和 android:layout_Gravity屬性
LinearLayout有兩個非常相似的屬性: android:gravity 與android:layout_gravity. 他們的區別在于: android:gravity 屬性是對該view中 ...
Android——android:gravity 和 android:layout_Gravity
LinearLayout有兩個非常相似的屬性: android:gravity與android:layout_gravity. 他們的區別在于: android:gravity 屬性是對該view中內 ...
隨機推薦
ASP.NET MVC5+EF6+EasyUI 后臺管理系統(71)-微信公眾平臺開發-公眾號管理
系列目錄 思維導圖 下面我們來看一個思維導圖,這樣就可以更快了解所需要的功能: 上一節我們利用了一個簡單的代碼例子,完成了與微信公眾號的對話(給公眾號發一條信息,并得到回復) 這一節將講解公眾號如何設 ...
JVM的堆(heap)、棧(stack)和方法區(method)
JVM主要由類加載器子系統.運行時數據區(內存空間).執行引擎以及與本地方法接口等組成.其中運行時數據區又由方法區Method Area.堆Heap.Java stack.PC寄存器.本地方法棧組成. ...
C#獲取枚舉描述代碼
public class MusterEnum { /// 獲取枚舉的描述信息 /// /// 傳入枚 ...
關于java設計模式與極品飛車游戲的思考
------- android培訓.java培訓.期待與您交流! ---------- 對像我一樣正在學習java的人來講,對設計模式的學習是個很重要的環節.而我們在學習設計模式時,不僅僅應該知道它們 ...
windows下常用軟件
1 ?pdf轉word solid converter pdf ?特點:功能強大,能轉換頁面頁眉等,還有表格.
JavaSE中線程與并行API框架學習筆記——線程為什么會不安全?
前言:休整一個多月之后,終于開始投簡歷了.這段時間休息了一陣子,又病了幾天,真正用來復習準備的時間其實并不多.說實話,心里不是非常有底氣. 這可能是學生時代遺留的思維慣性--總想著做好萬全準備才去做事 ...
MySQL中的查詢子句
查詢語句 字句名稱 使用目的 select 確定結果集中應該包含那些列 from 指明所要提取數據的表,以及這些表是如何連接的 where 過濾不需要的數據 group by 用于對具有想用列值的行進 ...
Maven 學習 -- 目錄
1.?Maven 學習-入門 2. Maven學習-目錄結構 3.?Maven學習-處理資源文件 啦啦啦
關于rimworld(邊緣之地)
低緩的音樂 ? 廣闊的原野 ?豐富而不雜亂的地表 ?完美的殖民拓荒世界. 各種隨機地形,豐富的資源.林木與礦產.隨機生成的大世界給人真實世界的感覺. 動態而和諧的畫面,隨風搖擺的植被,跳躍的兔子,以及 ...
總結
以上是生活随笔為你收集整理的android:layout_gravity=quot;topquot;,android:layout_gravity和gravity的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VS CODE下 无法执行 node-g
- 下一篇: com.fasterxml.jackso