Appearance
搭建 Compose 项目
上一节我们了解了 Compose 是什么,现在让我们来搭建第一个 Compose 项目吧!别担心,这个过程就像搭积木一样简单,我会一步一步地教你。
🔧 环境准备
在开始之前,我们需要确保我们的开发环境已经准备就绪:
1. Android Studio
确保你使用的是 Android Studio Arctic Fox (2020.3.1) 或更高版本,因为这些版本内置了对 Compose 的支持。如果你还在使用旧版本,快去更新吧!
2. Gradle 版本
确保你的 Gradle 版本至少为 7.0.2。Compose 需要最新的 Gradle 功能来支持它的构建过程。
3. Kotlin 版本
确保你的 Kotlin 版本至少为 1.5.31。Compose 是用 Kotlin 编写的,所以需要最新的 Kotlin 版本来支持它的特性。
🎨 创建新项目
现在,让我们开始创建第一个 Compose 项目:
1. 打开 Android Studio
启动 Android Studio,你会看到一个欢迎界面。
2. 选择模板
在欢迎界面中,点击 "New Project"。然后在 "Create New Project" 对话框中,选择 "Empty Compose Activity" 模板。
3. 填写项目信息
填写你的项目信息:
- Name:你的项目名称,比如 "MyFirstComposeApp"
- Package name:你的应用包名,比如 "com.example.myfirstcomposeapp"
- Save location:项目的保存位置
- Language:选择 "Kotlin"(Compose 只支持 Kotlin)
- Minimum SDK:选择至少 "API 21: Android 5.0 (Lollipop)"(Compose 支持的最低版本)
4. 完成创建
点击 "Finish",Android Studio 会自动创建一个 Compose 项目。
📁 项目结构
创建好的 Compose 项目结构与传统的 Android 项目类似,但有一些不同之处:
MyFirstComposeApp/
├── app/
│ ├── src/
│ │ ├── main/
│ │ │ ├── java/
│ │ │ │ └── com/example/myfirstcomposeapp/
│ │ │ │ ├── MainActivity.kt // 包含 Compose UI 的主活动
│ │ │ │ └── ui/
│ │ │ │ ├── theme/
│ │ │ │ │ ├── Color.kt // 主题颜色定义
│ │ │ │ │ ├── Shape.kt // 主题形状定义
│ │ │ │ │ ├── Theme.kt // 主题定义
│ │ │ │ │ └── Type.kt // 主题文字样式定义
│ │ │ │ └── MainContent.kt // 主内容 UI 组件
│ │ │ └── res/
│ │ │ ├── drawable/ // 图像资源
│ │ │ ├── values/ // 字符串、颜色等资源
│ │ │ └── xml/ // 布局文件(如果需要)
│ │ └── test/
│ └── build.gradle.kts // 模块级 Gradle 配置
└── build.gradle.kts // 项目级 Gradle 配置📋 Gradle 配置
Compose 项目的 Gradle 配置与传统的 Android 项目也有一些不同。让我们来看看模块级的 build.gradle.kts 文件:
kotlin
plugins {
id("com.android.application")
id("org.jetbrains.kotlin.android")
}
android {
namespace = "com.example.myfirstcomposeapp"
compileSdk = 33
defaultConfig {
applicationId = "com.example.myfirstcomposeapp"
minSdk = 21
targetSdk = 33
versionCode = 1
versionName = "1.0"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
isMinifyEnabled = false
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = "1.8"
}
buildFeatures {
compose = true // 启用 Compose 功能
}
composeOptions {
kotlinCompilerExtensionVersion = "1.4.3" // Compose 编译器扩展版本
}
}
dependencies {
implementation("androidx.core:core-ktx:1.10.1")
implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.6.1")
implementation("androidx.activity:activity-compose:1.7.2")
implementation(platform("androidx.compose:compose-bom:2023.06.01"))
implementation("androidx.compose.ui:ui")
implementation("androidx.compose.ui:ui-graphics")
implementation("androidx.compose.ui:ui-tooling-preview")
implementation("androidx.compose.material3:material3")
testImplementation("junit:junit:4.13.2")
androidTestImplementation("androidx.test.ext:junit:1.1.5")
androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1")
androidTestImplementation(platform("androidx.compose:compose-bom:2023.06.01"))
androidTestImplementation("androidx.compose.ui:ui-test-junit4")
debugImplementation("androidx.compose.ui:ui-tooling")
debugImplementation("androidx.compose.ui:ui-test-manifest")
}👀 查看效果
现在,让我们运行这个项目,看看 Compose 的效果:
1. 运行项目
点击 Android Studio 工具栏中的 "Run" 按钮,或者按下 Shift + F10 快捷键,运行你的项目。
2. 查看实时预览
在 Android Studio 中,打开 MainActivity.kt 文件,你会看到一个 "Preview" 面板。这个面板会实时显示你的 Compose UI 效果。
🎉 恭喜
你已经成功搭建了第一个 Compose 项目!现在,你可以开始学习 Compose 的其他知识了。
下一节,我们将学习 Compose 的基础组件,比如 Text、Button、Image 等。
🚀 继续前进吧!