-
-
Notifications
You must be signed in to change notification settings - Fork 17
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
File/Folder picker dialog #30
Comments
Given your code example, you are actually building a In my opinion Androids Storage Access Framework provides a really good and advanced document picker, so I personally don't think it's worth the effort creating a SimplePickFileDialog. But feel free to create a pull request once you completed your work ;) EDIT: |
You are right, thanks!
I can lost some details, but it seems Android Storage Access Framework does not have an opportunity to pickup a folder. |
Please, give a hint - what is a simplest way to insert file or folder icon before each list item? Is it possible by extending a |
It does:
As said, I suggest to extend from |
Do you mean a DocumentFile.fromTreeUri() as a result of Android file picker? If yes, it is inacceptable when you need an access to the file with |
Enclosed zip-archive is a simplest realization of a File/Folder Chooser for internal phone memory (in SINGLE_CHOICE mode only) based on your library. |
Enclosed zip-archive is a simplest realization of a File/Folder Chooser for internal phone memory (in SINGLE_CHOICE and MULTI_CHOICE modes) based on your library. |
My implementation of FIle/Folder Picker Dialog based on your library. |
Great work @isabsent, looks good :) |
I have never made a pull request before and I am not sure my code is acceptable for you. I think it would be better if you take my code, change it and include it in your code in consistence with your approach to the library construction. |
<p align="center" > <picture> <source media="(prefers-color-scheme: dark)" srcset="media/logo_named_right_darkmode.png"> <source media="(prefers-color-scheme: light)" srcset="media/logo_named_right.png"> <img width="50%" src="media/logo_named_right.png"> </picture> </p> # SimpleDialogFragments [![API 14+](https://img.shields.io/badge/API-14+-green.svg)](https://developer.android.com/about/dashboards/index.html#Platform) [![Maven Central](https://img.shields.io/maven-central/v/io.github.eltos/simpledialogfragments.svg)](https://search.maven.org/artifact/io.github.eltos/simpledialogfragments) [![JitPack](https://jitpack.io/v/eltos/SimpleDialogFragments.svg)](https://jitpack.io/#eltos/SimpleDialogFragments) [![Code Climate Rating](https://codeclimate.com/github/eltos/SimpleDialogFragments/badges/gpa.svg)](https://codeclimate.com/github/eltos/SimpleDialogFragments) [![Github CI](https://github.com/eltos/SimpleDialogFragments/actions/workflows/build.yml/badge.svg)](https://github.com/eltos/SimpleDialogFragments/actions/workflows/build.yml) [![License](https://img.shields.io/github/license/eltos/simpledialogfragments.svg)](https://github.com/eltos/SimpleDialogFragments#license) <img width="40%" align="right" src="https://github.com/eltos/SimpleDialogFragments/raw/main/media/screenshot.png"/> SimpleDialogFragments Library is a collection of easy to use and extendable DialogFragment's for Android. It is fully compatible with rotation changes and can be implemented with only a few lines of code. A new approach of result handling ensures data integrity over rotation changes, that many other libraries lack. |[🧑💻 API](https://eltos.github.io/SimpleDialogFragments)|[ℹ️ Wiki](https://github.com/eltos/SimpleDialogFragments/wiki)|[🚀 Releases](https://github.com/eltos/SimpleDialogFragments/releases)|[🖼️ Screenshots](https://github.com/eltos/SimpleDialogFragments/wiki/Showcase)om/sponsors/eltos) | |-|-|-|-|-|-| |[🧑💻 API](https://eltos.github.io/SimpleDialogFragments)|[ℹ️ Wiki](https://github.com/eltos/SimpleDialogFragments/wiki)|[🚀 Releases](https://github.com/eltos/SimpleDialogFragments/releases)|[🖼️ Screenshots](https://github.com/eltos/SimpleDialogFragments/wiki/Showcase)|[📱 Demo APK](https://github.com/eltos/SimpleDialogFragments/releases/download/v3.4/testApp.apk)|[🪙 DONATE](https://github.com/sponsors/eltos) | |-|-|-|-|-|-| ### Features * Common dialogs that can be used with few lines of code * Alert dialogs * Input and checkbox dialogs with suggestions and validations * Filterable single- / multi-choice dialogs * Color pickers (palettes and/or HSV) * Extensive forms * Date and time pickers * Pin code dialog * Progress dialogs * Easy result handling even after rotation changes * Persistence on rotation changes * Material design * Customizable and extendable dialogs ## Usage Check the [release page](https://github.com/eltos/SimpleDialogFragments/releases) for the latest and older versions: In your module level ``build.gradle`` when using [mavenCentral](https://search.maven.org/artifact/io.github.eltos/simpledialogfragments): ```groovy dependencies { implementation 'io.github.eltos:simpledialogfragments:3.6.3' } ``` or if using [JitPack](https://jitpack.io/#eltos/SimpleDialogFragments): ```groovy dependencies { implementation 'com.github.eltos:simpledialogfragments:v3.6.3' } ``` ### Building dialogs Building dialogs is very easy and short handed: ```java SimpleDialog.build() .title(R.string.hello) .msg(R.string.hello_world) .show(this); ``` Check the [wiki pages](https://github.com/eltos/SimpleDialogFragments/wiki) for instructions and examples on how to build the different dialogs available. ### Receive Results Supply a tag when showing the dialog and let the hosting Activity or Fragment implement the `SimpleDialog.OnDialogResultListener`. For details, please refere to the [wiki pages](https://github.com/eltos/SimpleDialogFragments/wiki/SimpleDialog#receiving-results). ```java @OverRide public boolean onResult(@nonnull String dialogTag, int which, @nonnull Bundle extras) { if (YES_NO_DIALOG.equals(dialogTag) && which == BUTTON_POSITIVE){ // ... return true; } if (LIST_DIALOG.equals(dialogTag) && which == BUTTON_POSITIVE){ ArrayList<Integer> pos = extras.getIntegerArrayList(SimpleListDialog.SELECTED_POSITIONS); // ... return true; } if (REGISTRATION_DIALOG.equals(dialogTag) && which == BUTTON_POSITIVE){ String username = extras.getString(USERNAME); String password = extras.getString(PASSWORD); // ... return true; } // ... return false; } ``` ## Extensions Known extensions and projects using this library: - [File/Folder picker](https://github.com/isabsent/FilePicker) (see [#30](#30)) ## License Copyright 2017-2022 Philipp Niedermayer ([github.com/eltos](https://github.com/eltos)) Licensed under the [Apache License 2.0](http://www.apache.org/licenses/LICENSE-2.0) You may only use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software in compliance with the License. For more information visit http://www.apache.org/licenses/LICENSE-2.0 The above copyright notice alongside a copy of the Apache License shall be included in all copies or substantial portions of the Software not only in source code but also in a license listing accessible by the user.
I am going to create a simple file/folder chooser based on your library. For this purpose I would like to extending your
SimpleListDialog
and customizeonItemClick
:and use it as follows:
but
onItemClick
is never called when I press an item in the list! Why?P.S. Would you be so kind to write your own SimplePickFileDialog? It is widely used and would be very useful as I suppose.
The text was updated successfully, but these errors were encountered: