ImmersionBar 开源项目教程
1. 项目的目录结构及介绍
ImmersionBar 项目的目录结构如下:
ImmersionBar/
├── app/
│ ├── build.gradle
│ ├── src/
│ │ ├── main/
│ │ │ ├── java/
│ │ │ │ └── com.gyf.immersionbar/
│ │ │ │ ├── MainActivity.java
│ │ │ │ └── ...
│ │ │ └── res/
│ │ │ ├── layout/
│ │ │ ├── values/
│ │ │ └── ...
│ ├── ...
├── library/
│ ├── build.gradle
│ ├── src/
│ │ ├── main/
│ │ │ ├── java/
│ │ │ │ └── com.gyf.immersionbar/
│ │ │ │ ├── ImmersionBar.java
│ │ │ │ └── ...
│ │ │ └── res/
│ │ │ ├── values/
│ │ │ └── ...
│ ├── ...
├── ...
├── build.gradle
├── settings.gradle
└── ...
目录结构介绍
-
app/
: 包含示例应用的代码和资源文件。build.gradle
: 应用模块的构建脚本。src/main/java/com.gyf.immersionbar/
: 包含示例应用的主要Java代码。src/main/res/
: 包含示例应用的资源文件,如布局、字符串等。
-
library/
: 包含 ImmersionBar 库的核心代码。build.gradle
: 库模块的构建脚本。src/main/java/com.gyf.immersionbar/
: 包含 ImmersionBar 库的主要Java代码。src/main/res/
: 包含库的资源文件,如字符串等。
-
根目录下的
build.gradle
和settings.gradle
是整个项目的构建和配置脚本。
2. 项目的启动文件介绍
MainActivity.java
MainActivity.java
是示例应用的启动文件,位于 app/src/main/java/com.gyf.immersionbar/
目录下。它展示了如何使用 ImmersionBar 库来实现沉浸式状态栏。
package com.gyf.immersionbar;
import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 初始化 ImmersionBar
ImmersionBar.with(this).init();
}
}
启动文件介绍
MainActivity
继承自AppCompatActivity
,是应用的主活动。- 在
onCreate
方法中,调用setContentView
设置布局文件。 - 使用
ImmersionBar.with(this).init()
初始化 ImmersionBar,实现沉浸式状态栏效果。
3. 项目的配置文件介绍
build.gradle (应用模块)
app/build.gradle
是应用模块的构建脚本,包含依赖管理和构建配置。
apply plugin: 'com.android.application'
android {
compileSdkVersion 30
defaultConfig {
applicationId "com.gyf.immersionbar"
minSdkVersion 16
targetSdkVersion 30
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation 'com.gyf.immersionbar:immersionbar:3.0.0'
implementation 'androidx.appcompat:appcompat:1.2.0'
implementation 'com.google.android.material:material:1.3.0'
}
配置文件介绍
- `