MaterialChipsInput 开源项目教程
1. 项目的目录结构及介绍
MaterialChipsInput 项目的目录结构如下:
MaterialChipsInput/
├── app/
│ ├── build/
│ ├── libs/
│ ├── src/
│ │ ├── androidTest/
│ │ ├── main/
│ │ │ ├── java/
│ │ │ │ ├── com/
│ │ │ │ │ ├── pchmn/
│ │ │ │ │ │ ├── sample/
│ │ │ │ │ │ └── materialchips/
│ │ │ ├── res/
│ │ │ └── AndroidManifest.xml
│ │ └── test/
│ ├── build.gradle
│ └── proguard-rules.pro
├── chips/
│ ├── build/
│ ├── src/
│ │ ├── main/
│ │ │ ├── java/
│ │ │ │ ├── com/
│ │ │ │ │ └── pchmn/
│ │ │ │ │ └── materialchips/
│ │ │ ├── res/
│ │ │ └── AndroidManifest.xml
│ ├── build.gradle
│ └── proguard-rules.pro
├── build.gradle
├── gradle.properties
├── gradlew
├── gradlew.bat
├── settings.gradle
└── README.md
目录结构介绍
-
app/
: 包含示例应用的代码和资源文件。build/
: 编译生成的文件。libs/
: 第三方库文件。src/
: 源代码文件。androidTest/
: 用于 Android 测试的代码。main/
: 主代码文件。java/
: Java 源代码。com/pchmn/sample/
: 示例应用的代码。com/pchmn/materialchips/
: MaterialChipsInput 库的代码。
res/
: 资源文件,如布局、图片等。AndroidManifest.xml
: 应用的清单文件。
test/
: 用于单元测试的代码。
build.gradle
: 应用的构建脚本。proguard-rules.pro
: ProGuard 配置文件。
-
chips/
: 包含 MaterialChipsInput 库的代码和资源文件。build/
: 编译生成的文件。src/
: 源代码文件。main/
: 主代码文件。java/
: Java 源代码。com/pchmn/materialchips/
: MaterialChipsInput 库的代码。
res/
: 资源文件,如布局、图片等。AndroidManifest.xml
: 库的清单文件。
build.gradle
: 库的构建脚本。proguard-rules.pro
: ProGuard 配置文件。
-
build.gradle
: 项目的根构建脚本。 -
gradle.properties
: Gradle 属性文件。 -
gradlew
: Gradle 包装器脚本(Unix)。 -
gradlew.bat
: Gradle 包装器脚本(Windows)。 -
settings.gradle
: 项目设置文件。 -
README.md
: 项目说明文档。
2. 项目的启动文件介绍
MaterialChipsInput 项目的启动文件是 app/src/main/java/com/pchmn/sample/MainActivity.java
。这个文件是示例应用的主活动,展示了如何使用 MaterialChipsInput 库。
package com.pchmn.sample;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.Toast;
import com.pchmn.materialchips.ChipView;
import com.pchmn.materialchips.ChipsInput;
import com.pchmn.materialchips.model.ChipInterface;
import java.util.ArrayList;
import java.util.List;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {