安卓自学小笔记第一弹

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


一、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 子类对应不同布局效果,通过配置布局属性,可灵活控制控件的排列、位置和大小。
相关推荐
JMchen1232 小时前
现代Android图像处理管道:从CameraX到OpenGL的60fps实时滤镜架构
android·图像处理·架构·kotlin·android studio·opengl·camerax
Fᴏʀ ʏ꯭ᴏ꯭ᴜ꯭.2 小时前
Keepalived VIP迁移邮件告警配置指南
运维·服务器·笔记
快点好好学习吧3 小时前
phpize 依赖 php-config 获取 PHP 信息的庖丁解牛
android·开发语言·php
是誰萆微了承諾3 小时前
php 对接deepseek
android·开发语言·php
ling___xi3 小时前
《计算机网络》计网3小时期末速成课各版本教程都可用谢稀仁湖科大版都可用_哔哩哔哩_bilibili(笔记)
网络·笔记·计算机网络
Dxy12393102164 小时前
MySQL如何加唯一索引
android·数据库·mysql
中屹指纹浏览器4 小时前
中屹指纹浏览器底层架构深度解析——基于虚拟化的全维度指纹仿真与环境隔离实现
经验分享·笔记
Hello_Embed4 小时前
libmodbus 移植 STM32(基础篇)
笔记·stm32·单片机·学习·modbus
无聊的小坏坏5 小时前
实习笔记:用 /etc/crontab 实现定期数据/日志清理
笔记·实习日记
香芋Yu5 小时前
【机器学习教程】第04章 指数族分布
人工智能·笔记·机器学习