Cómo crear un proyecto de estudio de Android y un diseño lineal

El artículo es demasiado largo, ¡se recomienda volver a leerlo!
Me gusta.

El primer paso es abrir Android Studio.

Inserte la descripción de la imagen aquí

Paso 2: crea una actividad vacía

Inserte la descripción de la imagen aquí

Paso 3: configurar el proyecto

Inserte la descripción de la imagen aquí
Nombre del proyecto (nombre): ¿No sabes qué proyecto tienes? Sin saberlo, saca el cadáver

Reglas de nomenclatura de nombres de paquetes: (ignore mis reglas de nomenclatura aquí)

一般命名规则:

com.公司名.项目名.模块名....

对于个人项目,分为:

1.individual(个体):
指个体项目,由个人发起,但非个人独立完成,可公开或私有项目,版权属于发起人

形式:indi.发起者名.项目名.模块名....

2.personal (个人私人):
指个人项目,由个人发起,并独立完成,可分享的项目,版权属于个人

形式:pers.个人.项目名.模块名....

3.private(私人):
指私有项目,由个人发起并独立完成,不用于分享的非公开项目,版权属于个人

形式:priv.个人.项目名.模块名....

SaveLocation (Guardar dirección del proyecto):

Generalmente crea uno: almacenamiento de directorio del espacio de trabajo

Idioma

En términos de idioma, elegí kotlin aquí, después de todo, es el idioma oficial recomendado por Google y también es una tendencia en el futuro. Por supuesto, Java no puede quedarse atrás.

Este proyecto admitirá aplicaciones instantáneas:

Con esta verificación, la aplicación generada en este proyecto se puede vincular directamente a otras aplicaciones a través de appLink.

Usa artefactos de AndroidX:

Utilice la biblioteca de soporte de la API de AndroidX. Esto debe verificarse, de lo contrario, se informarán muchos errores al usar los paquetes de soporte anteriores. La última versión de Android Studio está marcada de forma predeterminada. AndroidX es una actualización de la biblioteca de compatibilidad de Android. Los nombres de los paquetes de las API de la biblioteca de compatibilidad de Android se encuentran en android.support. *, Mientras que los nombres de los paquetes de todas las API de la biblioteca de AndroidX están en androidx. *. La biblioteca de compatibilidad de Android tiene algunas API que admiten versiones anteriores a la 4.0. Pero ahora la mayoría de las máquinas tienen la versión 4.0 o posterior, por lo que puede usar la nueva biblioteca de compatibilidad con la API de AndroidX, y las aplicaciones existentes solo necesitan modificar la ruta del paquete.

Haga clic en el botón Ejecutar en la esquina superior derecha, la máquina virtual no se encuentra y debe crearse.
Inserte la descripción de la imagen aquí
Seleccione este icono
Inserte la descripción de la imagen aquí
aquí y haga clic en Crear nuevo dispositivo virtual

Inserte la descripción de la imagen aquí
Aquí está para elegir el modelo que necesita
Inserte la descripción de la imagen aquí
Aquí para elegir la versión del sistema del teléfono, elegí el último Android 10.0

Inserte la descripción de la imagen aquí
Finalmente, puedes darle un nombre a tu dispositivo, terminar.
Inserte la descripción de la imagen aquí
Normalmente creo una nueva actividad como esta porque soy vago. . . No es necesario configurar
Inserte la descripción de la imagen aquí

¿Qué significa marcar Generar archivo de diseño?

Indica que se creará automáticamente un archivo de diseño correspondiente para FirstActivity.

¿Qué significa comprobar la actividad del lanzador?

Indica que FirstActivity se establecerá automáticamente como la actividad principal del proyecto actual.

Simplemente termine directamente.

Detalles de gestión de diseño de Andriod (1) -LinearLayout diseño lineal

* Andriod tiene 6 métodos de diseño, a saber LinearLayout(diseño lineal), TableLayout(diseño de tabla), FrameLayout(diseño de marco), RelativeLayout(diseño relativo), GridLayout(diseño de cuadrícula) y AbsoluteLayout(diseño absoluto).

Introducción a los atributos comunes de LinearLayout

Inserte la descripción de la imagen aquí
Atributo 1: android:orientationespecifique la dirección del diseño lineal (horizontal o vertical)

Propiedad 2: android:widthEl ancho del contenedor en el diseño lineal

Propiedad 3: android:heightLa altura del contenedor en el diseño lineal

Propiedad 4: android:backgroundEl fondo del diseño lineal.

Propiedad 5: en android:gravitydiseño lineal, la posición del contenedor secundario en relación con el contenedor principal

1 Valor de propiedad:

android:orientation="horizontal"           指定线性布局方向:水平

android:orientation="vertical"               指定线性布局方向:垂直

2. Valor de atributo:

android:width="xxxdp"                          

指定线性布局的容器宽度为:xxxdp

android:width="wrap_content"            

 指定线性布局的容器宽度为:根据容器内容宽度大小来填充屏幕宽度

android:width="match_parent"            

 指定线性布局的容器宽度为:撑满整个屏幕宽度

3. Valor de atributo:

android:height="xxxdp"                        

 指定线性布局的容器高度为:xxxdp

android:height="wrap_content"            

 指定线性布局的容器高度为:根据容器内容高度大小来填充屏幕高度

android:height="match_parent"             

指定线性布局的容器高度为:撑满整个屏幕高度

4. Valor de atributo:

android:background="#000"                  

指定线性布局的背景为:黑色(rgb颜色)

android:background="@android:color/black"   

指定线性布局的背景为:黑色(引用android系统自带的原始黑色)

andrid:backgrund="@color/colorPrimary"   

指定线性布局的背景为:(根据res/color.xml 中的colorPrimary所定义的颜色设置)

5 valor de atributo:

android:gravity="center"      

指定线性布局中,子容器相对于父容器所在的位置为:正中心

android:gravity="cente_verticalr"      

指定线性布局中,子容器相对于父容器所在的位置为:垂直方向的正中心

android:gravity="center_horizontal"     

 指定线性布局中,子容器相对于父容器所在的位置为:水平方向的正中心

android:gravity="left"      

指定线性布局中,子容器相对于父容器所在的位置为:最左边(默认)

android:gravity="right"      

指定线性布局中,子容器相对于父容器所在的位置为:最右边

android:gravity="top"      

指定线性布局中,子容器相对于父容器所在的位置为:最上方(默认)

android:gravity="bottom"     

 指定线性布局中,子容器相对于父容器所在的位置为:最下方

Dirección vertical:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#000"
    android:orientation="vertical">
 
    <Button
        android:id="@+id/btn1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="btn1"
        android:textAllCaps="false" />
 
    <Button
        android:id="@+id/btn2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="btn2"
        android:textAllCaps="false" />
 
    <Button
        android:id="@+id/btn3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="btn3"
        android:textAllCaps="false" />
 
</LinearLayout>

Inserte la descripción de la imagen aquí

Dirección horizontal:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#000"
    android:orientation="horizontal">
 
    <Button
        android:id="@+id/btn1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="btn1"
        android:textAllCaps="false" />
 
    <Button
        android:id="@+id/btn2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="btn2"
        android:textAllCaps="false" />
 
    <Button
        android:id="@+id/btn3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="btn3"
        android:textAllCaps="false" />
 
</LinearLayout>

Inserte la descripción de la imagen aquí
Dirección lineal: horizontal, la posición del control en la dirección vertical se puede cambiar por el valor del atributo android: layout_gravity del control

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#000"
    android:orientation="horizontal">
 
    <Button
        android:id="@+id/btn1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="top"
        android:text="btn1"
        android:textAllCaps="false" />
 
    <Button
        android:id="@+id/btn2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical"
        android:text="btn2"
        android:textAllCaps="false" />
 
    <Button
        android:id="@+id/btn3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom"
        android:text="btn3"
        android:textAllCaps="false" />
 
</LinearLayout>

Inserte la descripción de la imagen aquí

Dirección lineal: horizontal. Establezca la relación de peso entre el control y el control estableciendo la propiedad android: layout_weight del control. Aquí, la relación de ancho entre el control EditText y el control Button se establece en 1: 1. La premisa es que primero debe establecer el android: layout_width = "0dp" de estos dos controles.

Código:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal">
 
    <EditText
        android:id="@+id/et1"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:hint="Type something" />
 
    <Button
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="send"
        android:textAllCaps="false" />
 
</LinearLayout>

Inserte la descripción de la imagen aquí

Si solo el control EditText

android: layout_width = "0dp"

android: layout_weight = "1"

Y el botón de control

android: layout_width = "wrap_content“ ”

android: el atributo layout_weight no está configurado (tenga en cuenta que no está configurado aquí)

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal">
 
    <EditText
        android:id="@+id/et1"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:hint="Type something" />
 
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="send"
        android:textAllCaps="false" />
 
</LinearLayout>

Inserte la descripción de la imagen aquí

Comprensión de Android: id = "@ + id / xx"

@ + id / height El
símbolo "@" es un recordatorio de que el analizador XML debe analizar la siguiente cadena en un identificador.
El símbolo "+" significa que se agregará un símbolo de identificación.
"Id /" significa que este identificador se clasifica en "id".
"Altura" es el "android: id" principal de esta interfaz.
En procedimientos futuros, se utilizará "R.id.height" para obtener este componente de interfaz. Por lo tanto, "@ + id / height" significa que hemos creado un identificador llamado "height" aquí, que se puede utilizar para controlar los componentes de la interfaz correspondientes, y la clase "R" configurará automáticamente una dirección para los componentes de esta interfaz. El contenido de la clase "R" se puede encontrar viendo el archivo "R.java".

¿Has terminado de mirar? ? ? ? ?
Inserte la descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/i_nclude/article/details/74857691
Recomendado
Clasificación