android 选择组件,android文件选择器组件
demo效果FileSelector.gifGitHub上的源码介绍FileSelectorView 是自定义的文件选择器,用户在此基础上可自定义文件选择器风格。功能切换目录获取路径文件过滤文件排序自定义文件图标和设置大小设置文件名文字的大小、颜色监听选择的文件使用FileSelectorView 使用简单,只需将其加入到布局文件即可,无其他使用限制。对于Android Studio用户,可添加:
demo效果
FileSelector.gif
GitHub上的源码
介绍
FileSelectorView 是自定义的文件选择器,用户在此基础上可自定义文件选择器风格。
功能
切换目录
获取路径
文件过滤
文件排序
自定义文件图标和设置大小
设置文件名文字的大小、颜色
监听选择的文件
使用
FileSelectorView 使用简单,只需将其加入到布局文件即可,无其他使用限制。
对于Android Studio用户,可添加:
compile 'com.hz.android.fileselectorview:library:1.3'
布局文件
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
......
android:id="@+id/file_selector_view"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
......
代码中
......
//切换目录
fileSelectorView.setCurrentDirectory(new File(Environment.getExternalStorageDirectory(), "Download"));
//设置文件过滤
fileSelectorView.setFileExtensionForFileFilter(Arrays.asList("shp", "txt"));
//自定义文件图标
fileSelectorView.setFileIconFactory(new FileIconCreator() {
public Drawable getIcon(File file) {
if (file == null) {
return getResources().getDrawable(R.drawable.rotating);
} else {
return getResources().getDrawable(R.drawable.layers3);
}
}
});
fileSelectorView.setTextSize(30);//设置文字大小
fileSelectorView.setTextColor(Color.GREEN); //设置文字颜色
fileSelectorView.setIconSize(200); //设置图标大小也就是设置放置图标的imageView的大小
//设置选择文件的监听
fileSelectorView.setFileSelectedListener(new FileSelectorView.OnFileSelectedListener() {
@Override
public void onSelected(File selectedFile) {
Toast.makeText(MainActivity.this, "" + selectedFile.getAbsolutePath(), Toast.LENGTH_SHORT).show();
}
@Override
public void onFilePathChanged(File file) {
curPathTextView.setText(file.getAbsolutePath());
}
});
//设置文件排序
fileSelectorView.setFileSortComparator(new FileSelectorView.FileAscSortComparator());
}
......
注意
读取文件路径需要涉及到用户的许可:
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)