安卓自学小笔记第一弹

一连鸽了好多天,原因是广东的省考忽然提前报名了,提前了三个月,所以连忙去复习了一下基础,所以这边的我放了一下,差点错过了(悲)。


一、UI 构建体系概述

  • 安卓提供两种 UI 构建形式:传统的View 体系、新的 Compose 体系,入门阶段优先学习 View 体系。
  • 掌握 View 体系(Java+View)可满足职场基础开发需求,市面上仍有大量基于该体系的产品。
  • UI 开发核心:通过控件构建界面元素,将数据展示给用户,实现页面切换(俗称 "画 UI")。

二、核心基础概念

1. View 的定位

  • View 是安卓所有 UI 控件的父类,本质是 Java 类,封装后可显示文本、按钮、图片等可视化内容。
  • 所有控件均位于android.view包下,开发时直接调用系统提供的组件即可。

2. 常用基础控件

  • TextView:文本显示控件,用于展示文字内容。
  • Button:按钮控件,用于触发交互操作。
  • EditText:输入框控件,用于接收用户输入。
  • ImageView:图片显示控件,用于加载展示图片。
  • 其他控件:进度条、开关(Switch)等,按需调用。

三、添加控件的两种方式

1. Java 代码方式(手动创建)

  • 步骤 1:创建控件对象。示例:

    java 复制代码
        TextView textView = new TextView(this);
  • 步骤 2:设置控件属性,如字体大小、文本内容、背景色:

    java 复制代码
            textView.setTextSize(100);
            textView.setText("烟抽多了,喉咙痒痒的");
            textView.setBackgroundColor(Color.BLUE);
  • 步骤 3:设置布局参数(宽高):

    java 复制代码
            //布局
            int w = ViewGroup.LayoutParams.MATCH_PARENT;
            int h = ViewGroup.LayoutParams.WRAP_CONTENT;
            ViewGroup.LayoutParams layoutParams = new ViewGroup.LayoutParams(w,h);
  • 步骤 4:关联布局,通过 Activity 方法将控件添加到当前页面:

    java 复制代码
        addContentView(textView, layoutParams);

2. XML 布局文件方式(高效便捷)

  • 布局文件位置:res/layout目录下(如activity_main.xml),与MainActivity对应关联。
  • 操作方式:
    • 可视化操作:直接拖动控件到布局界面(适合快速演示,实际开发不推荐,因为实际运行的时候布局乱七八糟)。
    • 代码编辑:切换到Code视图,按 XML 语法声明控件(开发首选)。
  • XML 控件声明规则:
    • 开头用<控件类型>标签,结尾用</控件类型>或自闭合<控件类型/>。例:

      java 复制代码
          <ImageView
              app:layout_constraintBottom_toBottomOf="parent"
              app:layout_constraintEnd_toEndOf="parent"
              app:layout_constraintStart_toStartOf="parent"
              app:layout_constraintTop_toTopOf="parent"
              android:src="@mipmap/ic_launcher_round"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"/>
    • 标签内通过属性配置控件样式(无需刻意记忆,多用即熟)。

四、布局与 Java 代码的关联

1. 核心方法:setContentView

  • ActivityonCreate方法中调用(页面创建时自动执行)。

  • 作用:将 XML 布局文件与 Java 代码(Activity)绑定,示例:

    java 复制代码
    setContentView(R.layout.activity_main);

2. 资源引用规则

  • 资源 ID 格式:R.资源类型.资源名称,对应res目录下的资源文件夹。
  • 常见资源类型:
    • 布局资源:R.layout.布局文件名(对应res/layout)。
    • 图片资源:R.mipmap.图片名称(近年开发常用,图片存于res/mipmap)。
    • 其他资源:如 raw(原始文件)、values(配置文件)等,按同样规则引用。

五、ViewGroup 的作用

  • ViewGroup 是 "不可见的布局容器",继承自 View,用于控制子控件的布局结构和分布方式。
  • 开发中不直接使用 ViewGroup,而是使用其子类布局,如ConstraintLayout(约束布局)等。
  • 不同 ViewGroup 子类对应不同布局效果,通过配置布局属性,可灵活控制控件的排列、位置和大小。
相关推荐
码途漫谈1 小时前
Easy-Vibe开发篇阅读笔记(四)——前端开发之结合 Agent Skills 美化界面
人工智能·笔记·ai·开源·ai编程
糖炒栗子03264 小时前
【笔记】高分卫星影像 TIF 切片处理
笔记
Nice_Fold4 小时前
Kubernetes DaemonSet、StatefulSet与Service(自用笔记)
笔记·容器·kubernetes
ZhiqianXia7 小时前
《The Design of Design》阅读笔记
前端·笔记·microsoft
饭小猿人7 小时前
Android 腾讯X5WebView如何禁止系统自带剪切板和自定义剪切板视图
android·java
祁白_7 小时前
nmap工具笔记整理
笔记·web安全·测试
_李小白7 小时前
【android opencv学习笔记】Day 8: remap(像素位置重映射)
android·opencv·学习
美狐美颜SDK开放平台7 小时前
多场景美颜SDK解决方案:直播APP(iOS/安卓)开发接入详解
android·人工智能·ios·音视频·美颜sdk·第三方美颜sdk·短视频美颜sdk
南境十里·墨染春水8 小时前
C++笔记 STL——set
开发语言·c++·笔记
d111111111d8 小时前
直流电机位置式 PID 控制 和 舵机的区别
笔记·stm32·单片机·嵌入式硬件·学习