Android入门

下载Android studio,创建第一个项目

模板可以选择empty views Activity

在这个界面可以修改,使用语言,项目名字,存储路径以及适用版本

完成后,得到一个最初始的Android 项目,红色标记的两个文件,一个是负责逻辑的java文件,一个是负责界面设计的xml文件

布局文件以xml为后缀,主要使用,线性布局和相对布局,虽然也可以用图形拖拽的方式设计界面,但是细调还是要理解代码

以计算器的布局为例,

首先线性布局,多用嵌套,分为垂直和水平两种方向,设计一个计算器的思路是。如下设计就可以实现,两行,每行有三列button

<线性垂直分布>

<线性垂直分布>

</线性垂直分布>

<线性垂直分布>

</线性垂直分布>

</线性垂直分布>

c 复制代码
<?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="vertical">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="154dp"
        android:orientation="vertical">


        <EditText
            android:id="@+id/editTextText"
            android:layout_width="wrap_content"
            android:layout_height="72dp"
            android:layout_weight="1"
            android:ems="10"
            android:inputType="text"
            android:text="Name" />

        <TextView
            android:id="@+id/textView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="TextView" />
    </LinearLayout>


    <LinearLayout
        android:layout_width="match_parent"

        android:layout_height="64dp"
        android:orientation="horizontal">

        <ImageButton
            android:id="@+id/button1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:src="@drawable/ic_launcher_foreground"
            android:text="1" />

        <Button
            android:id="@+id/button2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="12dp"
            android:layout_weight="1"
            android:text="2" />

        <Button
            android:id="@+id/button3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"

            android:layout_marginLeft="12dp"
            android:layout_weight="1"
            android:text="3" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="64dp"
        android:orientation="horizontal">

        <Button
            android:id="@+id/button4"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="4" />

        <Button
            android:id="@+id/button5"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="8dp"
            android:layout_weight="1"
            android:text="5" />

        <Button
            android:id="@+id/button6"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"

            android:layout_marginLeft="8dp"
            android:layout_weight="1"
            android:text="6" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="63dp"
        android:layout_marginTop="8dp"
        android:orientation="horizontal">

        <Button
            android:id="@+id/button7"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="7" />

        <Button
            android:id="@+id/button8"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="8dp"
            android:layout_weight="1"
            android:text="8" />

        <Button
            android:id="@+id/button0"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"

            android:layout_marginLeft="8dp"
            android:layout_weight="1"
            android:text="9" />
    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="63dp"
        android:layout_marginTop="8dp"
        android:orientation="horizontal">

        <Button
            android:id="@+id/button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="0" />

        <Button
            android:id="@+id/button10"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="8dp"
            android:layout_weight="1"
            android:text="+" />

        <Button
            android:id="@+id/button11"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"

            android:layout_marginLeft="8dp"
            android:layout_weight="1"
            android:text="=" />
    </LinearLayout>
</LinearLayout>

如果使用相对布局,要确定谁在谁的上方或者下方

c 复制代码
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/container"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.example.test.MainActivity"

    android:padding="15dp"
    android:layout_gravity="center"
    android:background="#111"
    >

    <Button
        android:id="@+id/button4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/button13"
        android:layout_alignBottom="@+id/button13"
        android:layout_toLeftOf="@+id/button2"
        android:background="#a10b39"
        android:padding="10dp"
        android:text="="
        android:textColor="#fff"
        android:textSize="10dp"
        android:layout_marginRight="3dp"/>

    <Button
        android:id="@+id/button9"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/button10"
        android:layout_alignBottom="@+id/button10"
        android:layout_alignLeft="@+id/button7"
        android:background="#666"
        android:padding="10dp"
        android:text="7"
        android:textColor="#fff"
        android:textSize="10dp"
        android:layout_marginRight="3dp"
        android:layout_width="wrap_content"
        android:layout_marginBottom="3dp"
        />

    <Button
        android:id="@+id/button11"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/button10"
        android:layout_alignBottom="@+id/button10"
        android:layout_toRightOf="@+id/button13"
        android:background="#666"
        android:padding="10dp"
        android:text="9"
        android:textColor="#fff"
        android:textSize="10dp"
        android:layout_marginRight="3dp"
        android:layout_width="wrap_content"
        android:layout_marginBottom="3dp"
        />

    <Button
        android:id="@+id/button10"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/button18"
        android:layout_below="@+id/button17"
        android:background="#666"
        android:padding="10dp"
        android:text="8"
        android:textColor="#fff"
        android:textSize="10dp"
        android:layout_marginRight="3dp"
        android:layout_width="wrap_content"
        android:layout_marginBottom="3dp"
        />

    <Button
        android:id="@+id/button20"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/button14"
        android:layout_alignParentRight="true"
        android:background="#a10b39"
        android:padding="10dp"
        android:text="←"
        android:textColor="#fff"
        android:textSize="10dp"
        android:layout_marginBottom="3dp"/>

    <Button
        android:id="@+id/button19"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/button20"
        android:layout_alignBottom="@+id/button20"
        android:layout_toLeftOf="@+id/button20"
        android:background="#a10b39"
        android:padding="10dp"
        android:text="CE"
        android:textColor="#fff"
        android:textSize="10dp"
        android:layout_marginRight="3dp"
        android:layout_marginBottom="3dp"
        />

    <Button
        android:id="@+id/button18"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/button10"
        android:layout_toLeftOf="@+id/button11"
        android:background="#a10b39"
        android:padding="10dp"
        android:text="±"
        android:textColor="#fff"
        android:textSize="10dp"
        android:layout_marginRight="3dp"
        android:layout_marginBottom="3dp"
        />

    <Button
        android:id="@+id/button17"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/editText1"
        android:layout_marginTop="5dp"
        android:background="#a10b39"
        android:padding="10dp"
        android:text="√"
        android:textColor="#fff"
        android:textSize="10dp"
        android:layout_marginRight="3dp"
        android:layout_marginBottom="3dp" />

    <Button
        android:id="@+id/button14"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_below="@+id/button18"
        android:background="#d89218"
        android:padding="10dp"
        android:text="÷"
        android:textColor="#fff"
        android:textSize="10dp"
        android:layout_marginBottom="3dp" />

    <Button
        android:id="@+id/button7"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/button10"
        android:layout_toRightOf="@+id/button6"
        android:background="#666"
        android:padding="10dp"
        android:text="5"
        android:textColor="#fff"
        android:textSize="10dp"
        android:layout_marginBottom="3dp"
        android:layout_marginRight="3dp"/>

    <Button
        android:id="@+id/button6"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/button7"
        android:layout_alignBottom="@+id/button7"
        android:layout_alignParentLeft="true"
        android:background="#666"
        android:padding="10dp"
        android:text="4"
        android:textColor="#fff"
        android:textSize="10dp"
        android:layout_marginRight="3dp"
        android:layout_marginBottom="3dp" />

    <Button
        android:id="@+id/button15"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/button7"
        android:layout_alignBottom="@+id/button7"
        android:layout_alignParentRight="true"
        android:background="#d89218"
        android:padding="10dp"
        android:text="×"
        android:textColor="#fff"
        android:textSize="10dp"
        android:layout_marginBottom="3dp" />

    <Button
        android:id="@+id/button8"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/button7"
        android:layout_alignBottom="@+id/button7"
        android:layout_toRightOf="@+id/button10"
        android:background="#666"
        android:padding="10dp"
        android:text="6"
        android:textColor="#fff"
        android:textSize="10dp"
        android:layout_marginBottom="3dp"
        android:layout_marginRight="3dp" />

    <Button
        android:id="@+id/button3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/button7"
        android:layout_toRightOf="@+id/button1"
        android:background="#666"
        android:padding="10dp"
        android:text="2"
        android:textColor="#fff"
        android:textSize="10dp"
        android:layout_marginBottom="3dp"
        android:layout_marginRight="3dp" />

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/button3"
        android:layout_alignBottom="@+id/button3"
        android:layout_alignParentLeft="true"
        android:background="#666"
        android:padding="10dp"
        android:text="1"
        android:textColor="#fff"
        android:textSize="10dp"
        android:layout_marginBottom="3dp"
        android:layout_marginRight="3dp" />

    <Button
        android:id="@+id/button5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/button3"
        android:layout_alignBottom="@+id/button3"
        android:layout_toRightOf="@+id/button7"
        android:background="#666"
        android:padding="10dp"
        android:text="3"
        android:textColor="#fff"
        android:textSize="10dp"
        android:layout_marginBottom="3dp"
        android:layout_marginRight="3dp"/>

    <Button
        android:id="@+id/button16"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/button5"
        android:layout_alignBottom="@+id/button5"
        android:layout_alignLeft="@+id/button15"
        android:background="#d89218"
        android:padding="10dp"
        android:text="-"
        android:textColor="#fff"
        android:textSize="10dp"
        android:layout_marginBottom="3dp" />

    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/button4"
        android:layout_alignBottom="@+id/button4"
        android:layout_alignParentRight="true"
        android:background="#d89218"
        android:padding="10dp"
        android:text="+"
        android:textColor="#fff"
        android:textSize="10dp" />

    <Button
        android:id="@+id/button13"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/button3"
        android:layout_toLeftOf="@+id/button4"
        android:padding="10dp"
        android:text="."
        android:textColor="#fff"
        android:textSize="10dp"
        android:layout_marginRight="3dp"
        android:background="#d89218"  />

    <Button
        android:id="@+id/button12"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/button13"
        android:layout_alignBottom="@+id/button13"
        android:layout_alignParentLeft="true"
        android:background="#666"
        android:padding="10dp"
        android:text="0"
        android:textColor="#fff"
        android:textSize="10dp"
        android:layout_marginRight="3dp" />

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/editText1"
        android:layout_alignParentTop="true"
        android:layout_alignRight="@+id/editText1"
        android:background="#666"
        android:text=" "
        android:textColor="#fff"
        android:textSize="15dp"
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <EditText
        android:id="@+id/editText1"
        android:layout_width="wrap_content"
        android:layout_height="40dp"
        android:layout_alignLeft="@+id/button17"
        android:layout_below="@+id/textView1"
        android:background="#666"
        android:ems="10"
        android:singleLine="true"
        android:textColor="#000"
        android:textSize="28dp" />

</RelativeLayout>
相关推荐
太空漫步112 小时前
android社畜模拟器
android
海绵宝宝_5 小时前
【HarmonyOS NEXT】获取正式应用签名证书的签名信息
android·前端·华为·harmonyos·鸿蒙·鸿蒙应用开发
凯文的内存6 小时前
android 定制mtp连接外设的设备名称
android·media·mtp·mtpserver
天若子6 小时前
Android今日头条的屏幕适配方案
android
林的快手8 小时前
伪类选择器
android·前端·css·chrome·ajax·html·json
望佑8 小时前
Tmp detached view should be removed from RecyclerView before it can be recycled
android
xvch10 小时前
Kotlin 2.1.0 入门教程(二十四)泛型、泛型约束、绝对非空类型、下划线运算符
android·kotlin
人民的石头14 小时前
Android系统开发 给system/app传包报错
android
yujunlong391914 小时前
android,flutter 混合开发,通信,传参
android·flutter·混合开发·enginegroup
rkmhr_sef15 小时前
万字详解 MySQL MGR 高可用集群搭建
android·mysql·adb