美文网首页Android开发
《第二行代码》 第一章 LinearLayout布局

《第二行代码》 第一章 LinearLayout布局

作者: 你的益达233 | 来源:发表于2021-08-24 11:33 被阅读0次

控件我就讲了三个常用的TextView,EditText,ImageView

布局和控件区别:准确说LinearLayout也是控件,因为它里面还能放其他控件,所以我们也可以叫它是布局

单靠控件很难做出复杂的布局,必须结合布局才可以

LinearLayout称作线性布局

1、android:orientation属性设置控件是垂直排列还是横向排列

android:orientation="vertical" 垂直排列
android:orientation="horizontal" 横向排列(默认值)

2、Weight权重

它是设给子控件,用来设置所占LinearLayout的比例

情况一:都设置0dp,这种情况比较简单,就是按比例划分
示例代码:

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
tools:context=".groupview.LinearLayoutActivity">

<TextView
    android:layout_width="0dp"
    android:layout_height="match_parent"
    android:layout_weight="1"
    android:background="#ff0000"
    android:text="One"
    android:textSize="30sp"
    android:gravity="center"/>

<TextView
    android:layout_width="0dp"
    android:layout_height="match_parent"
    android:layout_weight="1"
    android:background="#00ff00"
    android:text="Two"
    android:textSize="30sp"
    android:gravity="center"/>
</LinearLayout>

效果图:

ll_weight_1.png

情况二:一个wrap_content,一个0dp
先给wrap_content,剩下的空间再按比例再给

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
tools:context=".groupview.LinearLayoutActivity">

<TextView
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_weight="1"
    android:background="#ff0000"
    android:text="One"
    android:textSize="30sp"
    android:gravity="center"/>

<TextView
    android:layout_width="0dp"
    android:layout_height="match_parent"
    android:layout_weight="1"
    android:background="#00ff00"
    android:text="Two"
    android:textSize="30sp"
    android:gravity="center"/>
</LinearLayout>  

效果图:

ll_weight_2.png

本身One的wrap_content就需要空间,后面剩余空间再按1:1平分

情况二:都是wrap_content
这种情况直接按比例划分

情况三:都是match_parent
这种情况比较复杂,可能有些控件看不见了,显示的比例也可能不是你设置的比例。可以直接放弃掉。记住0dp加设比例情况就好了

3、为LinearLayout中的控件之间设置分割线

这个之前写过一篇文章
https://www.jianshu.com/p/4e5ac4f09f20

相关文章

  • 《第二行代码》 第一章 LinearLayout布局

    控件我就讲了三个常用的TextView,EditText,ImageView 布局和控件区别:准确说LinearL...

  • 日常总结

    1.代码创建布局并设置属性,添加控件 LinearLayout linearLayout =newLinearLa...

  • Android学习笔记——基本布局

    主要用于个人复习(基于第一行代码) 线性布局(LinearLayout):这个布局会将它所包含的控件在线性方向上依...

  • 布局

    LinearLayout,RelativeLayout,GardLayout 写线性布局是加一行 布局方式:and...

  • andriod 动态添加组件

    LinearLayout ly =new LinearLayout(this); //新建布局 //设置布局参...

  • MD5新属性之TextInputLayout

    【核心代码】 【xml 布局】 【注】TextInputLayout控件和LinearLayout完全一样,它只是...

  • Android纯代码布局LinearLayout

    前段时间公司要求做个SDK的登录界面,没办法用XML布局了,很头疼。等到要纯代码编界面的时候才发现XML是有多么的...

  • android 折叠效果

    android 折叠效果 学习笔记,代码自定义LinearLayout: 用法:在布局中直接使用。

  • 代码动态设置布局参数

    一、如果控件已经在布局文件中声明,则在代码中直接用控件实例获取布局对象: LinearLayout.LayoutP...

  • 简单的Android界面创建

    线性布局 线性布局:LinearLayout控件特性:LinearLayout是一种ViewGroup,在其内部的...

网友评论

    本文标题:《第二行代码》 第一章 LinearLayout布局

    本文链接:https://www.haomeiwen.com/subject/tvldiltx.html