1. 伯乐范文网 > 知识库 >

layout_gravity,Android中gravity与layout_gravity的区别有哪些

本文目录索引

1,Android中gravity与layout_gravity的区别有哪些?

android:gravity 属性是对该view内容的限定。比如一个button上面的text.可以设置该text在view的靠左,靠右等位置.该属性就干了这个。 android:layout_gravity 是用来设置该view相对与起父view的位置.比如一个button在linearlayout里,想把该button放在靠左靠右等位置就可以通过该属性设置。 这样就解释了,有什么弄个最外布局,然后里面包了几个布局,如果要使这几个布局都靠底,就可以在最外布局的属性里设置androi:gravity=”botton”因为gravity是对里面的内容起作用。

Android中gravity与layout_gravity的区别有哪些?

2,哪位大神给我讲解下 android:gravity和android:layout_gravity这

android:layout_gravity属性是用在子控件上的,用来告诉父布局“我”想要在哪个位置,比如在RelativeLayout中的一个TextView,设置了android:layout_gravity="center_vertical",那么textView将在RelativeLayout的垂直中心位置 而android:gravity则是用在父布局上,用来标明父布局如何给子view布局 比如android:gravity="center"时的RelativeLayout 可以看到两个TextView被安排在了正中心

3,FrameLayout 内的控件如何设置位置

所有的子元素将会固定在屏幕的左上角;不能为FrameLayout中的一个子元素指定一个位置。后一个子元素将会直接在前一个子元素之上进行覆盖填充,把它们部份或全部挡住(除非后一个子元素是透明的)。
简单来说:FrameLayout中的子元素总是以屏幕的左上角层叠在一起。在FrameLayout布局里面android:layout_margin的各种属性必须依赖于android:layout_gravity,也就是说,要想margin生效,必须设定view的layout_gravity属性。
下面的配置将2个控件显示在屏幕的中间:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" 宽
android:layout_height="fill_parent" 高
>
<LinearLayout
android:layout_width="200dip" 宽
android:layout_height="wrap_content" 高
android:orientation="vertical" 垂直
android:gravity="center" 居中
android:layout_gravity="center" 居中
>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/empty3"
/>
<TextView
android:layout_width="fill_parent" 宽
android:layout_height="wrap_content" 高
android:layout_marginTop="10dp"
android:text="暂无记录"
android:textColor="@color/gray_dark"
android:textSize="@dimen/font_middle"
android:gravity="center"
/>

4,Android开发之layout_gravity属性

layout_gravity 是LinearLayout 子元素的特有属性。对于layout_gravity, 该属性用于设置控件相对于容器的对齐方式,可选项有:top、bottom、left、right、center_vertical、fill_vertical 、 center、fill等等。 这些可选项中不是适用于每一种布局。在垂直线性布局中,android:gravity为bottom不起作用;而水平线性布局中,android:gravity为right不起作用。本属性是android:layout_gravity属性,与 android:gravity 属同。android:gravity是LinearLayout的特有属性。android:layout_gravity是LinearLayout 子元素的特有属性,不要混淆了。 扩展资料 Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。尚未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致”。Android操作系统最初由Andy Rubin开发,主要支持手机。2005年8月由Google收购注资。 2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。随后Google以Apache开源许可证的授权方式,发布了Android的源代码。第一部Android智能手机发布于2008年10月。 Android逐渐扩展到平板电脑及其他领域上,如电视、数码相机、游戏机等。2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。 2013年的第四季度,Android平台手机的全球市场份额已经达到78.1%。 参考资料:百度百科Android

5,自定义控件,如何用代码设置layout_gravity属性

布局如下:<LinearLayout xmlns:android=" 如何用代码自定义这样的布局控件~~该如何用代码设置TextView里的那个android:layout_gravity="center"属性?public class MyViewextends LinearLayout{ public MyView(Context context) { super(context); // TODO Auto-generated constructor stub } public MyView(Context context,AttributeSet attrs){ super(context,attrs); TextView txt_currentTime = new TextView(context); txt_currentTime.setTextSize(10); LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT)); addView(txt_currentTime, params); }}