layout gravity属性Android之gravity和layout_gravity属性的区别

Android之gravity和layout_gravity属性的区别,Adroid开发,布局文件属性gravity和layout_gravity经常被用到,但也经常分不清楚gravity和layout_gravity到底怎么用,所以在布局的时候展示不出想要的效果,今天刚好做了一个案例,趁此弄明白gravity和layout_gravity的区别。下面先看看效果图:
Android开发,布局文件属性gravity和layout_gravity经常被用到,但也经常分不清楚gravity和layout_gravity到底怎么用,所以在布局的时候展示不出想要的效果,今天刚好做了一个案例,趁此弄明白gravity和layout_gravity的区别。下面先看看效果图:步骤阅读工具/原料Android开发工具:AndroidStudio或Eclipse虚拟机或测试手机一、设计Android布局文件1在这个案例里,LinearLayout父控件中放置四个TextView,在TextView中使用gravity和layout_gravity设置该TextView的位置,显示的图标使用了drawableTop属性,然后添加图片资源即可,最后达到了上图的效果。步骤阅读步骤阅读2gravity表示在当前控件内的text属性值相对于该控件,设置text上下左右或居中的位置,查看xm布局文件,TextView控件gravity属性,默认属性值left。现在,去掉gravity属性值center,运行TeachCourse的Demo,文字左边对齐,效果如下:步骤阅读3分析:我们看到控件TextView的内容“新闻、政务、社区、微信”都默认左边对齐,所以可以判断gravity用于设置控件内容相对于当前控件的位置。4layout_gravity这个属性设置的位置的“参照物”不同,达到的效果是相对于当前控件的父控件上下左右或居中的位置。同样,如果我们在上面的布局文件中去掉layout_gravity属性,保留gravity属性,看看效果如下:步骤阅读5分析:TeachCourse会发现,效果和添加了layout_gravity的效果一样呢?这是不是说,layout_gravity属性不起作用呢?这是因为在案例的TextView中,我们设置了drawableTop这个属性,同时LinearLayout的高度是固定的,那么默认的layout_gravity属性值是center,但如果我们在最后一个TextView里面去掉drawableTop属性后,在设置layout_gravity属性为top,效果就出来了,看下图:步骤阅读6在上面的TeachCourseDemo中,将最后一个选项的“微信”的layout_gravity属性改为bottom,效果如下:步骤阅读END注意事项gravity和layout_gravity并不是所有的控件都有的属性当前控件包含是某个控件的子控件的时候,可以设置子控件的layout_gravity属性,在包含text属性的Button、TextView控件中可以设置gravity的属性值

本文来自投稿,不代表长河网立场,转载请注明出处: http://www.changhe99.com/a/oV6MYYM6gM.html

(0)

相关推荐