android pick file,LFilePicker---文件选择利器,各种样式有它就够了
LFilePicker
在 Android 開(kāi)發(fā)中如果需要選擇某個(gè)文件,可以直接調(diào)取系統(tǒng)的文件管理器進(jìn)行選擇,但是無(wú)法保證各個(gè)廠商的手機(jī)界面一致,而且解析Uri 還比較繁瑣,如果還需要多選呢?需要文件類(lèi)型過(guò)濾呢?老板說(shuō)界面丑呢?
那么福利來(lái)了,你可以使用LFilePicker,它都支持什么呢?
還算漂亮的界面
各種手機(jī)一致的體驗(yàn)
多種界面風(fēng)格
自定義標(biāo)題文字和顏色
文件多選或者單選
文件類(lèi)型過(guò)濾
Fragment啟動(dòng)
國(guó)際化(中英文切換)
文件數(shù)量限制
在哪里能找到它呢?Bio Bio Bio
心急的人可以直接根據(jù)說(shuō)明文檔進(jìn)行使用了,任性的人跟著我繼續(xù)走~~~
先看看界面,萬(wàn)一丑的不行呢?
默認(rèn)界面
好了還算可以把,和經(jīng)典的Windows風(fēng)格類(lèi)似,先用用看吧。怎么用呢?
基礎(chǔ)用法
1.添加依賴(lài)
compile 'com.leon:lfilepickerlibrary:1.3.0'
【P.S.】 話(huà)說(shuō)為了能夠方便的依賴(lài)使用可是操碎了心,將項(xiàng)目庫(kù)開(kāi)源到JCenter使用的過(guò)程中趟了很多坑,如果感興趣,可以查看文章:新版Bintray下將Android Library 開(kāi)源到JCenter 的正確姿勢(shì)
另外,如果網(wǎng)絡(luò)環(huán)境有問(wèn)題無(wú)法正常使用compile指令(像我這樣),良心提供 aar 文件下載使用。
下載鏈接:lfilepickerlibrary
【P.S.】 如果不知道 aar 如何使用,請(qǐng)參考文章:Android中 aar 文件的日常使用
2.添加文件讀寫(xiě)權(quán)限
3.打開(kāi)選擇界面
你可以在Activity中打開(kāi):
new LFilePicker()
.withActivity(MainActivity.this)
.withRequestCode(Consant.REQUESTCODE_FROM_ACTIVITY)
.start();
也可以在Fragment中打開(kāi)(同時(shí)支持v4包SupportFragment):
new LFilePicker().withSupportFragment(mFragment)
.withRequestCode(Consant.REQUESTCODE_FROM_FRAGMENT)
.withTitle("Open From Fragment")
.start();
4.接收選擇返回值
重寫(xiě)方法并獲取數(shù)據(jù):
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK) {
if (requestCode == Consant.REQUESTCODE_FROM_ACTIVITY) {
List list = data.getStringArrayListExtra(Constant.RESULT_INFO);
Toast.makeText(getApplicationContext(), "選中了" + list.size() + "個(gè)文件", Toast.LENGTH_SHORT).show();
}
}
}
已經(jīng)以上你已經(jīng)能夠正常使用了,但是說(shuō)好的那么多特性呢?接下來(lái),深入一點(diǎn)
自由使用
文件夾和文件圖標(biāo)太low?換!
new LFilePicker()
.withActivity(this)
.withRequestCode(Consant.REQUESTCODE_FROM_ACTIVITY)
.withIconStyle(Constant.ICON_STYLE_YELLOW)
.start();
withIconStyle(mIconType)提供三種風(fēng)格:
Constant.ICON_STYLE_YELLOW 經(jīng)典黃(默認(rèn)風(fēng)格)
Constant.ICON_STYLE_GREEN 清新綠
Constant.ICON_STYLE_BLUE 柔和藍(lán)
清新綠風(fēng)格
柔和藍(lán)風(fēng)格
選擇界面標(biāo)題不合適?換!
new LFilePicker()
.withActivity(this)
.withRequestCode(Consant.REQUESTCODE_FROM_ACTIVITY)
.withTitle("我的標(biāo)題")//標(biāo)題文字
.withTitleColor("#FF99CC")//文字顏色
.start();
標(biāo)題和文字顏色效果
想要限制單選或者多選?換!
new LFilePicker()
.withActivity(this)
.withRequestCode(Consant.REQUESTCODE_FROM_ACTIVITY)
.withMutilyMode(true)
.start();
withMutilyMode(true):true代表多選;false代表單選
多選效果
單選效果
想要限制選擇文件類(lèi)型?過(guò)濾!
new LFilePicker()
.withActivity(this)
.withRequestCode(Consant.REQUESTCODE_FROM_ACTIVITY)
.withFileFilter(new String[]{".txt", ".png"})
.start();
默認(rèn)不過(guò)濾效果
過(guò)濾后效果
英文怎么搞?已經(jīng)內(nèi)置實(shí)現(xiàn)!
將手機(jī)語(yǔ)言調(diào)整為英文后:
英語(yǔ)環(huán)境操作
返回圖標(biāo)不喜歡?換!
new LFilePicker()
.withActivity(this)
.withRequestCode(Consant.REQUESTCODE_FROM_ACTIVITY)
.withBackIcon(Constant.BACKICON_STYLEONE)
.start();
withBackIcon() 提供三種風(fēng)格:
Constant.BACKICON_STYLEONE
Constant.BACKICON_STYLETWO
Constant.BACKICON_STYLETHREE
風(fēng)格1
風(fēng)格2
風(fēng)格3
標(biāo)題背景顏色不喜歡?換!
new LFilePicker()
.withActivity(this)
.withRequestCode(Consant.REQUESTCODE_FROM_ACTIVITY)
.withBackgroundColor("#FF9966")
.start();
背景顏色效果圖
切換選擇路徑?已經(jīng)包含,隨便選!
路徑選擇效果
結(jié)束
基本上能夠滿(mǎn)足日常選擇文件的需求了,開(kāi)源不易,如果對(duì)你有用,歡迎Star給我一個(gè)小小的鼓勵(lì)!
更多文章歡迎訪問(wèn):我的博客
總結(jié)
以上是生活随笔為你收集整理的android pick file,LFilePicker---文件选择利器,各种样式有它就够了的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 北京环球影城门票可以玩几天
- 下一篇: 腾讯吃鸡 android,腾讯吃鸡手游《