目录
一、AndroidMainifest.xml文件
AndroidManifest是什么
AndroidManifest官方解释https://developer.android.com/是应用清单(manifest意思是货单),每个应用的根目录中都必须包含一个,并且文件名必须一模一样,用于声明应用程序的配置和组件。
AndroidManifest文件结构
<?xml version="1.0" encoding="utf-8"?>
<!-- Android清单文件,用于声明应用程序的配置和组件 -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<application
android:allowBackup="true" <!-- 指定应用程序是否允许进行备份 -->
android:dataExtractionRules="@xml/data_extraction_rules" <!-- 指定数据提取规则的资源文件 -->
android:fullBackupContent="@xml/backup_rules" <!-- 指定完整备份的内容规则的资源文件 -->
android:icon="@mipmap/ic_launcher" <!-- App安装后显示的图标 -->
android:label="@string/app_name" <!-- App安装后显示的文字(APP名) -->
android:roundIcon="@mipmap/ic_launcher_round" <!-- 应用程序圆形图标 -->
android:supportsRtl="true" <!-- 指定应用程序是否支持从右到左的布局 -->
android:theme="@style/Theme.Timeactivity" <!-- 应用程序的主题样式 -->
tools:targetApi="31"> <!-- 指定构建工具的目标API版本 -->
<activity
android:name=".MainActivity" <!-- 启动的主文件 -->
android:exported="true"> <!-- 指定该Activity是否可以被其他APP组件调用 -->
<intent-filter>
<action android:name="android.intent.action.MAIN" /> <!-- 指定该Activity为APP的主入口点 -->
<category android:name="android.intent.category.LAUNCHER" /> <!-- 指定该Activity为APP的启动器 -->
</intent-filter>
</activity>
</application>
</manifest>
二、android的四大组件
(一)Activity(活动)
Activity是Android应用程序的界面展示组件。它负责处理用户界面的展示和交互,并且可以通过调用其他组件来完成特定的功能。每个Activity都是一个独立的屏幕窗口,用户可以在不同的Activity之间进行切换。
子类Activity需要实现的方法:
1)onCreate(Bundle):初始化Activity。使用setContentView(int)方法将布局资源定义到用户界面上;使用findViewById(int)通过指定的ID查找和获取布局文件中定义的视图控件。
2)onPause():处理当离开Activity时要做的事情
(二)Service
Service是在后台执行长时间运行操作或处理网络请求的组件。它没有用户界面,主要用于执行一些耗时的任务,如下载文件、播放音乐等。Service可以与其他组件进行通信,例如Activity可以启动Service,并且可以与Service进行数据交换。
使用时,每个Service类在AndroidMainifest.xml中有相应的<service>
声明;Service可以通过Context.startService()和Context.bindService()启动;
(三)BroadcastReceiver(广播接收器)
是用于接收系统广播或自定义广播的组件。广播是一种机制,用于在应用程序之间或系统内部传递事件或消息。通过注册BroadcastReceiver,应用程序可以接收并响应特定类型的广播消息,例如电池状态变化、网络连接状态变化等。
(四)ContentProvider(内容提供者)
ContentProvider提供了应用程序之间共享数据的机制。它可以管理应用程序的数据集合,并提供标准的接口供其他应用程序查询、插入、更新和删除数据。ContentProvider可以将数据存储在文件、数据库或远程服务器中,并通过URI(统一资源标识符)来访问数据。
三、基础界面组件与布局
(一)组件共用属性
属性值 | 说明 |
---|---|
android:id="@+id/ivball" | ID,组件的唯一标识 |
android:layout_width="wrap_content" | 组件宽度 warp_content:大小适应文本内容 match_parent:大小适应父组件的大小 |
android:layout_height="wrap_content" | 组件高度 wrap_content:大小适应文本内容 match_parent:大小适应父组件的大小 |
android:layout_weight="1" | 设置权重,让一行或一列的组件按比例显示 |
android:drawableLeft=“@mipmap/suo” android:drawableRight android:drawableTop android:drawableBottom | 设置编辑框文本的左边,右边,上边,底部显示的drawable (图片) |
(二)文本组件textView
属性值 | 说明 |
---|---|
android:gravity=“center” | 设置文本框内文本的对齐方式 top / bottom / left / right / center_horizontal(横向中央位置对齐) |
android:textSize=“20sp” | 文本大小,单位有sp,dp等 |
android:textStyle=“normal” | 设置字体样式 bool 粗体, italic 斜体, normal 正常 |
android:lines=“2” | 设置文本行数 |
android:layout_gravity=“center” | 组件本身相对于父组件的显示位置 |
(三)按钮组件Button
属性值 | 说明 |
---|---|
android:clickable=“true” | 设置是否允许点击按钮 ,true/falsebtn.setClickable(boolean) |
android:background=“#980F0F” | 通过资源文件设置颜色 |
android:onClick | 设置点击事件setOnClickListener(OnClickListener) |
(四)线性布局LinearLayout
线性布局是一种按照水平或垂直方向线性排列子视图的布局。可以通过设置权重(weight)属性来控制子视图在布局中的占比。
属性值 | 说明 |
---|---|
android:orientation=“vertical” | 设置线性布局的方向horizontal(水平) vertical(垂直) |
未完待续……