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>
相关推荐
小羊子说6 小时前
Android系统中 socketpair 的源码解读与应用分析小结
android·java
FL4m3Y4n6 小时前
MySQL索引原理与SQL优化
android·sql·mysql
我命由我123457 小时前
Android Gradle - Gradle 自定义插件(Build Script 自定义插件、buildSrc 自定义插件、独立项目自定义插件)
android·java·java-ee·kotlin·android studio·android-studio·android runtime
冬奇Lab7 小时前
AudioFlinger混音机制深度解析
android·音视频开发·源码阅读
滑雪的企鹅.9 小时前
Kotlin云头条技术点剖析(项目复习02)——用户协议页面
android·开发语言·kotlin
JMchen1239 小时前
Android NDK开发从入门到实战:解锁应用性能的终极武器
android·开发语言·c++·python·c#·android studio·ndk开发
脚大江山稳11 小时前
单独为mysql数据库的某个库创建用户
android·数据库·mysql
吉哥机顶盒刷机11 小时前
XDBL安卓玩机刷机工具V2.8_解压缩版
android·智能手机·电脑
XiaoLeisj13 小时前
Android 广播机制实战:从系统广播监听、自定义登录通知到有序广播分发
android