SwipeMenuListView 开源项目教程
1. 项目的目录结构及介绍
SwipeMenuListView 项目的目录结构如下:
SwipeMenuListView/
├── library/
│ ├── src/
│ │ └── main/
│ │ └── java/
│ │ └── com/
│ │ └── baoyz/
│ │ └── swipemenulistview/
│ │ ├── SwipeMenu.java
│ │ ├── SwipeMenuItem.java
│ │ ├── SwipeMenuLayout.java
│ │ ├── SwipeMenuListView.java
│ │ └── SwipeMenuView.java
│ └── build.gradle
├── sample/
│ ├── src/
│ │ └── main/
│ │ └── java/
│ │ └── com/
│ │ └── baoyz/
│ │ └── swipemenulistview/
│ │ └── sample/
│ │ └── MainActivity.java
│ └── build.gradle
├── build.gradle
└── settings.gradle
目录结构介绍
library/
: 包含核心库的源代码。src/main/java/com/baoyz/swipemenulistview/
: 核心库的主要代码文件。SwipeMenu.java
: 定义了滑动菜单的实体类。SwipeMenuItem.java
: 定义了滑动菜单项的实体类。SwipeMenuLayout.java
: 定义了滑动菜单布局的类。SwipeMenuListView.java
: 定义了滑动菜单列表视图的类。SwipeMenuView.java
: 定义了滑动菜单视图的类。
sample/
: 包含示例应用的源代码。src/main/java/com/baoyz/swipemenulistview/sample/
: 示例应用的主要代码文件。MainActivity.java
: 示例应用的主活动文件。
2. 项目的启动文件介绍
项目的启动文件是 sample/src/main/java/com/baoyz/swipemenulistview/sample/MainActivity.java
。这个文件是示例应用的主活动文件,负责初始化和展示 SwipeMenuListView 的功能。
MainActivity.java 文件介绍
package com.baoyz.swipemenulistview.sample;
import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import com.baoyz.swipemenulistview.SwipeMenuListView;
public class MainActivity extends Activity {
private SwipeMenuListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView = (SwipeMenuListView) findViewById(R.id.listView);
String[] array = new String[]{"Item 1", "Item 2", "Item 3", "Item 4", "Item 5"};
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, array);
listView.setAdapter(adapter);
}
}
主要功能
- 初始化
SwipeMenuListView
实例。 - 设置一个简单的数组适配器来展示列表项。
3. 项目的配置文件介绍
项目的配置文件主要位于 library/build.gradle
和 sample/build.gradle
中。
library/build.gradle 文件介绍
apply plugin: 'com.android.library'
android {
compileSdkVersion 28
buildToolsVersion "28.0.3"
defaultConfig {
minSdkVersion 14
targetSdkVersion 28
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation 'com.android.support:support-v4:28.0.0'
}
主要配置
- `