BottomNavigation 开源项目教程
1. 项目的目录结构及介绍
BottomNavigation 项目的目录结构如下:
BottomNavigation/
├── app/
│ ├── build.gradle
│ ├── src/
│ │ ├── androidTest/
│ │ ├── main/
│ │ │ ├── java/
│ │ │ │ └── com/
│ │ │ │ └── ashokvarma/
│ │ │ │ └── bottomnavigation/
│ │ │ │ ├── ...
│ │ │ ├── res/
│ │ │ │ ├── drawable/
│ │ │ │ ├── layout/
│ │ │ │ ├── menu/
│ │ │ │ ├── values/
│ │ │ │ └── ...
│ │ ├── test/
├── bottomnavigation/
│ ├── build.gradle
│ ├── src/
│ │ ├── main/
│ │ │ ├── java/
│ │ │ │ └── com/
│ │ │ │ └── ashokvarma/
│ │ │ │ └── bottomnavigation/
│ │ │ │ ├── ...
│ │ │ ├── res/
│ │ │ │ ├── drawable/
│ │ │ │ ├── layout/
│ │ │ │ ├── values/
│ │ │ │ └── ...
├── build.gradle
├── gradle.properties
├── settings.gradle
└── ...
目录结构介绍
-
app/
: 包含示例应用的代码和资源文件。build.gradle
: 应用模块的构建脚本。src/
: 源代码目录。androidTest/
: 包含 Android 测试代码。main/
: 主代码目录。java/
: Java 源代码。com/ashokvarma/bottomnavigation/
: BottomNavigation 库的主要代码。
res/
: 资源文件。drawable/
: 图片资源。layout/
: 布局文件。menu/
: 菜单资源。values/
: 字符串、颜色等资源。
test/
: 包含单元测试代码。
-
bottomnavigation/
: BottomNavigation 库的代码和资源文件。build.gradle
: 库模块的构建脚本。src/
: 源代码目录。main/
: 主代码目录。java/
: Java 源代码。com/ashokvarma/bottomnavigation/
: BottomNavigation 库的主要代码。
res/
: 资源文件。drawable/
: 图片资源。layout/
: 布局文件。values/
: 字符串、颜色等资源。
-
build.gradle
: 项目的根构建脚本。 -
gradle.properties
: Gradle 配置属性。 -
settings.gradle
: 项目设置文件。
2. 项目的启动文件介绍
BottomNavigation 项目的启动文件位于 app/src/main/java/com/ashokvarma/bottomnavigation/sample/MainActivity.java
。
package com.ashokvarma.bottomnavigation.sample;
import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;
import com.ashokvarma.bottomnavigation.BottomNavigationBar;
import com.ashokvarma.bottomnavigation.BottomNavigationItem;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
BottomNavigationBar bottomNavigationBar = findViewById(R.id.bottom_navigation_bar);
bottomNavigationBar
.addItem(new BottomNavigationItem(R.drawable.ic_home_white_24dp, "Home"))
.addItem(new BottomNavigationItem(R.drawable.ic_book_white_24dp, "Books"))
.addItem(new BottomNavigationItem(R.drawable.ic_music_note_white_24dp, "Music"))
.add