Skip to content

Commit 6e77b56

Browse files
committed
1. 修改READ.ME
1 parent 47b6600 commit 6e77b56

File tree

3 files changed

+141
-2
lines changed

3 files changed

+141
-2
lines changed

README.md

Lines changed: 138 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,144 @@
11
## 介绍
22

3+
1. 可在文件浏览器中选择指定后缀名文件
4+
2. 可通过扫描全盘的方式,选择指定后缀名的文件
5+
3. 类似微信图片选择器选择图片或视频
6+
4. 图片选择页面可以自定义主题
7+
5. 支持Activity、Fragment
8+
9+
## Example
10+
311
![FilePicker](https://github.com/imLibo/FilePicker/blob/master/screenshot/Screenshot_20180307-124655.png) ![FilePicker](https://github.com/imLibo/FilePicker/blob/master/screenshot/Screenshot_2018-03-07-13-51.png) ![FilePicker](https://github.com/imLibo/FilePicker/blob/master/screenshot/Screenshot_20180307-124316.png)
412
![FilePicker](https://github.com/imLibo/FilePicker/blob/master/screenshot/Screenshot_20180307-124556.png) ![FilePicker](https://github.com/imLibo/FilePicker/blob/master/screenshot/Screenshot_20180307-124202.png) ![FilePicker](https://github.com/imLibo/FilePicker/blob/master/screenshot/Screenshot_20180307-124213.png)
513

14+
---
15+
16+
### 可下载APK直接体验
17+
++[Demo.apk](https://github.com/imLibo/FilePicker/blob/master/APK/release/filepicker-demo.apk)++
18+
19+
20+
---
21+
22+
### 用法
23+
24+
##### 一、 在文件浏览器中选择指定文件
25+
```
26+
FilePicker.from(this)
27+
.chooseForBrowser()
28+
.setMaxCount(2)
29+
.setFileTypes("png", "doc","apk", "mp3", "gif", "txt", "mp4", "zip")
30+
.requestCode(REQUEST_CODE_CHOOSE)
31+
.start();
32+
```
33+
34+
##### 二、 分类查找指定后缀名文件
35+
36+
```
37+
FilePicker
38+
.from(this)
39+
.chooseForMimeType()
40+
.setMaxCount(10)
41+
.setFileTypes("png", "doc","apk", "mp3", "gif", "txt", "mp4", "zip")
42+
.requestCode(REQUEST_CODE_CHOOSE)
43+
.start();
44+
```
45+
##### 三、 在图片选择器中选择图片或视频
46+
47+
```
48+
FilePicker
49+
.from(this)
50+
.chooseMedia()
51+
.enabledCapture(true)
52+
.setTheme(R.style.FilePicker_Dracula)
53+
.requestCode(REQUEST_CODE_CHOOSE)
54+
.start();
55+
```
56+
57+
##### 四、 接收返回的文件数据,在 ++onActivityResult++ 方法中获取。选中文件以链表方式返回, ++EssFile++ 类为载体
58+
59+
60+
```
61+
@Override
62+
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
63+
super.onActivityResult(requestCode, resultCode, data);
64+
if (resultCode != RESULT_OK) {
65+
return;
66+
}
67+
if (requestCode == REQUEST_CODE_CHOOSE) {
68+
ArrayList<EssFile> essFileList = data.getParcelableArrayListExtra(Const.EXTRA_RESULT_SELECTION);
69+
StringBuilder builder = new StringBuilder();
70+
for (EssFile file :
71+
essFileList) {
72+
builder.append(file.getMimeType()).append(" | ").append(file.getName()).append("\n\n");
73+
}
74+
textView.setText(builder.toString());
75+
}
76+
}
77+
```
78+
79+
80+
81+
### 属性列表
82+
83+
名称 | 描述 | 默认值
84+
---|---|---
85+
FileTypes | 需要显示的文件类型 | 无
86+
SortType | 排序类型 | 按名字排序 BY_NAME_ASC
87+
isSingle | 是否单选 |false
88+
maxCount | 最大可选中数量 | 10
89+
request_code | 请求码 | 无
90+
onlyShowImages | 是否仅显示图片(仅当其实chooseMedia时有效) | false
91+
onlyShowVideos | 是否仅显示视频(仅当其实chooseMedia时有效) | false
92+
enabledCapture | chooseMedia时是否显示照相机 | false
93+
placeHolder | 图片的PlaceHolder | png_holder
94+
themeId | 主题ID | R.Style.FilePicker_Elec
95+
96+
### 自定义主题
97+
98+
99+
```
100+
<style name="FilePicker.Elec" parent="Theme.AppCompat.Light.NoActionBar">
101+
<item name="colorPrimary">@color/elec_primary</item>
102+
<item name="colorPrimaryDark">@color/elec_primary_dark</item>
103+
<item name="toolbar">@style/Toolbar.elec</item>
104+
<item name="album.dropdown.title.color">@color/elec_album_dropdown_title_text</item>
105+
<item name="album.dropdown.count.color">@color/elec_album_dropdown_count_text</item>
106+
<item name="album.element.color">@android:color/white</item>
107+
<item name="album.thumbnail.placeholder">@color/elec_album_dropdown_thumbnail_placeholder</item>
108+
<item name="album.emptyView">@drawable/ic_empty_elec</item>
109+
<item name="album.emptyView.textColor">@color/elec_album_empty_view</item>
110+
<item name="item.placeholder">@color/elec_item_placeholder</item>
111+
<item name="item.checkCircle.backgroundColor">@color/elec_item_checkCircle_backgroundColor</item>
112+
<item name="item.checkCircle.borderColor">@color/elec_item_checkCircle_borderColor</item>
113+
<item name="page.bg">@color/elec_page_bg</item>
114+
<item name="bottomToolbar.bg">@color/elec_bottom_toolbar_bg</item>
115+
<item name="bottomToolbar.preview.textColor">@color/elec_bottom_toolbar_preview</item>
116+
<item name="bottomToolbar.apply.textColor">@color/elec_bottom_toolbar_apply</item>
117+
<item name="preview.bottomToolbar.back.textColor">@color/elec_preview_bottom_toolbar_back_text</item>
118+
<item name="preview.bottomToolbar.apply.textColor">@color/elec_preview_bottom_toolbar_apply</item>
119+
<item name="listPopupWindowStyle">@style/Popup.elec</item>
120+
<item name="capture.textColor">@color/elec_capture</item>
121+
</style>
122+
```
123+
124+
125+
### Feature TODO
126+
127+
- [ ] 根据文件类型打开/预览文件
128+
- [ ] 预览图片界面
129+
- [ ] 压缩图片
130+
- [ ] 裁剪图片
131+
- [ ] 自定义相机拍照
132+
- [ ] 去掉AndPermission依赖,用原生代码申请权限
133+
- [ ] 增加多种图片加载框架支持
134+
- [ ] 文件浏览器支持自定义主题
135+
- [ ] 分类选择文件界面支持自定义主题
136+
137+
138+
### THANKS
139+
140+
[Android-FilePicker](https://github.com/DroidNinja/Android-FilePicker)
141+
142+
[Matisse](https://github.com/zhihu/Matisse)
6143

144+
[AndroidPicker](https://github.com/gzu-liyujiang/AndroidPicker)

app/src/main/java/com/ess/essfilepicker/MainActivity.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ public void onBrowse(View view) {
2828
FilePicker.from(this)
2929
.chooseForBrowser()
3030
.setMaxCount(2)
31+
.setFileTypes("png", "doc","apk", "mp3", "gif", "txt", "mp4", "zip")
3132
.requestCode(REQUEST_CODE_CHOOSE)
3233
.start();
3334
}
@@ -49,7 +50,7 @@ public void onSelectPictures(View view){
4950
.from(this)
5051
.chooseMedia()
5152
.enabledCapture(true)
52-
// .setTheme(R.style.Matisse_Dracula)
53+
.setTheme(R.style.FilePicker_Dracula)
5354
.requestCode(REQUEST_CODE_CHOOSE)
5455
.start();
5556
}

filepicker/src/main/res/values/styles.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@
4444

4545
//===================================== Theme Dracula ==========================================
4646

47-
<style name="Matisse.Dracula" parent="Theme.AppCompat.NoActionBar">
47+
<style name="FilePicker.Dracula" parent="Theme.AppCompat.NoActionBar">
4848
<item name="colorPrimary">@color/dracula_primary</item>
4949
<item name="colorPrimaryDark">@color/dracula_primary_dark</item>
5050
<item name="toolbar">@style/Toolbar.Dracula</item>

0 commit comments

Comments
 (0)