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>
相关推荐
雪芽蓝域zzs7 分钟前
uniapp 判断运行设备类型(安卓、苹果、鸿蒙、微信小程序、H5)
android·uni-app·harmonyos
三天不学习23 分钟前
【2025年CSDN博客之星主题创作文章】我在 Python 与数据智能领域的深耕与突破 —— 年度技术复盘与思考
android·数据库·python
lxysbly24 分钟前
安卓 PSX 模拟器,手机上重温 PS1 经典的几种选择
android·智能手机
走在路上的菜鸟25 分钟前
Android学Dart学习笔记第二十八节 Isolates
android·笔记·学习·flutter
モンキー・D・小菜鸡儿28 分钟前
Android 自定义浮动线条视图实现:动态视觉效果的艺术
android·java
2501_9151063239 分钟前
iOS开发中CPU功耗监控的实现与工具使用
android·macos·ios·小程序·uni-app·cocoa·iphone
杰瑞不懂代码39 分钟前
结合os模块和shutil模块实现本地文件自动化操作
android·java·自动化·办公自动化·shutil·os
we1less1 小时前
[audio] AudioTrack (四) getOutputForAttr 分析
android·java
李艺为10 小时前
根据apk包名动态修改Android品牌与型号
android·开发语言
Tom4i12 小时前
【网络优化】Android 如何监听系统网络连接成功
android·网络