diseño del proyecto de estudio de Android

1. Diseño de restricción (ingrese por defecto en nuevos proyectos de Android Studio)

androidx.constraintlayout.widget.ConstraintLayout

wrap_content表示内容有多宽,这个文本框就有多宽
match_parent表示整行都是占满空间,在线性布局只会占满剩余的空间,根据方向不同进行占满(水平或垂直)

2. Diseño lineal LinearLayout

存在多个TextView应使用android:orientation
android:orientation="vertical"

Uso de LinearLayout anidado

Puede borrar estos códigos, estos códigos están relacionados con el diseño de restricción

app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />

2.1. Si usa layout_gravity (alineación: centro / izquierda / derecha / abajo / múltiples diseños divididos por "|"), todos estarán uno al lado del otro en la posición media

<?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="vertical"
    android:gravity="center"
    tools:context=".MainActivity">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello World!"/>

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="测试测试!!!占满"/>

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="水平的"/>

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="!!很平"/>

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="ppp多多多"/>

    </LinearLayout>
    <TextView
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:text="另外"/>
</LinearLayout>

3. Diseño relativo (no hay direccionalidad, pero el eje Z, cuanto mayor es el valor del eje Z después del código, se puede suspender. Debe haber una referencia (única) (1 el diseño en sí 2 está especificado por ID ))

Para crear un diseño, busque directamente cualquier archivo xml ctrl + c en el diseño, luego haga clic en ctrl + v en el directorio de diseño y luego modifique el nombre.

 

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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="vertical"
    tools:context=".MainActivity">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:text="布局相对居中"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:text="左下角"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true"
        android:text="右下角"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_alignParentRight="true"
        android:text="右上角"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:text="左上角"/>
</RelativeLayout>

<TextView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#bac"/>

3.1, en la parte superior, inferior, izquierda y derecha de TextView

El primer paso: el valor de ID debe escribirse en el objeto de referencia, unicidad

<TextView
    android:id="@+id/tv_center"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerInParent="true"
    android:text="布局相对居中"/>

Paso 2: arriba / abajo de la identificación, izquierda y derecha

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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="vertical"
    tools:context=".MainActivity">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="#bac"/>
    <TextView
        android:id="@+id/tv_center"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:text="布局相对居中"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/tv_center"
        android:text="center左上角"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/tv_center"
        android:layout_centerHorizontal="true"
        android:text="center正上面"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/tv_center"
        android:layout_centerHorizontal="true"
        android:text="center正下面"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toRightOf="@+id/tv_center"
        android:layout_centerVertical="true"
        android:text="center左面"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toLeftOf="@+id/tv_center"
        android:layout_centerVertical="true"
        android:text="center右面"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:text="左下角"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true"
        android:text="右下角"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_alignParentRight="true"
        android:text="右上角"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:text="左上角"/>

</RelativeLayout>

4. Diseño del marco FrameLayout: solo el eje Z, es decir, todo flotante, sin direccionalidad, solo parte de la función del diseño relativo , puede controlar el diseño a través de layout_gravity (generalmente utilizado en diseño lineal, los mismos atributos), gravedad se usa en el diseño (la división general es fija), y layout_gravity se usa en el control (especificado por separado), lo que significa decirle al diseño dónde quiero estar.

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout 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"
    tools:context=".MainActivity">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="#bac"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:text="布局相对居中G"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|left"
        android:text="左下角G"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|right"
        android:text="右下角G"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="right"
        android:text="右上角G"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="left"
        android:text="左上角G"/>

</FrameLayout>

 

 

 

Supongo que te gusta

Origin blog.csdn.net/xwbk12/article/details/115021660
Recomendado
Clasificación