原文地址:android:layout_gravity和android:gravity属性的区别


gravity的中文意思就是”重心“,就是表示view横向和纵向的停靠位置


android:gravity:是对view控件本身来说的,是用来设置view本身的文本应该显示在view的什么位置,默认值是左侧

android:layout_gravity:是相对于包含改元素的父元素来说的,设置该元素在父元素的什么位置


比如TextView: android:layout_gravity表示TextView在界面上的位置,android:gravity表示TextView文本在TextView的什么位置,默认值是左侧


如下例子

[html] view plain copy
  1. <?xmlversion="1.0"encoding="utf-8"?>
  2. <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
  3. android:orientation="vertical"
  4. android:layout_width="fill_parent"
  5. android:layout_height="fill_parent"
  6. >
  7. <TextView
  8. android:layout_width="100dip"
  9. android:layout_height="100dip"
  10. android:layout_gravity="bottom|center_horizontal"
  11. android:gravity="center|bottom"
  12. android:background="#00FF00"
  13. android:text="@string/textview"
  14. />
  15. <Button
  16. android:layout_width="100dip"
  17. android:layout_height="100dip"
  18. android:layout_gravity="bottom|left"
  19. android:gravity="left|top"
  20. android:background="#FF0000"
  21. android:text="@string/button"
  22. />
  23. </LinearLayout>



注意,TextView并没有按照我们设置的android:layout_gravity属性那样显示在界面的下方正中央,Button也没有显示在界面的左下方。这是因为我们设置了LinearLayout的android:orientation属性为"vertical"。对于LinearLayout如果设置android:orientation="vertical",那么android:layout_gravity的设置只在水平方向生效,如上图TextView显示在屏幕的水平正中央,而Button显示在水平方向的最左边;如果设置android:orientation="horizontal",那么android:layout_gravity属性只在垂直方向生效


更多相关文章

  1. Android(安卓)的网络编程(17)-android显示网络图片
  2. [原]如何在Android用FFmpeg+SDL2.0解码显示图像
  3. android:padding和android:margin的区别
  4. Android(安卓)面试题总结之Android(安卓)基础(五)
  5. android升级adt和sdk之后无法识别SDK Location的一个解决方式
  6. android设置Activity背景色为透明的2种方法
  7. 【Android(安卓)TextView/EditText 不允许换行】android:lines
  8. 【整理】Android中EditText中的InputType类型含义与如何定义
  9. android实现密码框右侧显示小眼睛

随机推荐

  1. android之【代码实现ImageView图片切换】
  2. Delphi XE5 Android 调用 Google ZXing
  3. android 图片叠加效果——两种方法
  4. [掌眼]iOS / Android / java / node.js
  5. Android startActivities()的使用
  6. 启动android模拟器没有反应,Failed to ope
  7. Android实现ListView点击事件+SQLite数据
  8. android典型监听事件实
  9. Android(安卓)Sensor感应器介绍(一)重力感
  10. Android(安卓)- Intent与IntentFilter