当前位置:   article > 正文

Android_Studio_布局_LinearLayout(线性布局)_android studio 的linearlayout

android studio 的linearlayout

一、LinearLayout常用属性

1、orientation:

  布局中组件的排列方式,有horizontal(水平),vertical(垂直,默认),两种方式

2、gravity:

  控制组件所包含的子元素的对齐方式,可多个组合,如(left|buttom)

3、layout_gravity:

  控制该组件在父容器里的对齐方式

4、layout_width:

  布局的宽度,通常不直接接写数字的,用wrap_content(组件实际大小),fill_parent或者match_parent填满容器。

5、layout_height:

  布局的高度,参数同上

6、id:

  为该组伯设置一个资源id,在java文件中可以通过findViewById(id)找到该组件。

7、background:

  为该组件设置一个背景图片,或者直接用颜色覆盖。

二、Weight(权重)属性

1、最简单用法

		    <LinearLayout
		        android:layout_width="match_parent"
		        android:layout_height="fill_parent"
		        android:layout_weight="1"
		        android:background="#ADFF2F"
		        android:orientation="vertical" />
		    <LinearLayout
		        android:layout_width="match_parent"
		        android:layout_height="fill_parent"
		        android:layout_weight="2"
		        android:background="#DA70D6"
		        android:orientation="vertical" />
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

          在这里插入图片描述

2、weight属性算法

都是fill_parent下解析
		step 1:个个都是fill_parent,但是屏幕只有一个啦,那么1 - 3 = - 2 fill_parent 
		step 2:依次比例是1/6,2/6,3/6 
		step 3:先到先得,
		先分给one,计算: 1 - 2 * (1/6) = 2/3 fill_parent 
		接着到two,计算: 1 - 2 * (2/6) = 1/3 fill_parent 
		最后three,计算 1 - 2 * (3/6) = 0 fill_parent 
		step 4:所以最后的结果是:one占了两份,two占了一份,three什么都木有 以上就是为什么three没有出现的原因了,
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

3、Java代码中设置weight属性

		//获取要设置weight属性的控件
		Button button = (Button) findViewById(R.id.button2);
		//获取控件当前layout属性
		LinearLayout.LayoutParams params = (LinearLayout.LayoutParams)button.getLayoutParams();
		//修改要修改的项
		params.weight = 1.0f;
		//设置控件weight属性
		button.setLayoutParams(params);
		
		//也可以New一个新的属性对象
		LinearLayout.LayoutParams params =new LinearLayout.LayoutParams(
		                                LinearLayout.LayoutParams.WRAP_CONTENT,
		                                LinearLayout.LayoutParams.MATCH_PARENT,1.0f);
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

4、为LinearLayout设置分割线

		    <View
		        android:layout_width="match_parent"
		        android:layout_height="1px"
		        android:background="#000000" />
  • 1
  • 2
  • 3
  • 4
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/377355
推荐阅读
相关标签
  

闽ICP备14008679号