FlexibleAdapter icon indicating copy to clipboard operation
FlexibleAdapter copied to clipboard

New demoApp

Open davideas opened this issue 7 years ago • 8 comments

I'm going to review the demoApp completely. I will improve the existing examples and adding new ones:

App features

  • [x] A new v26 logo and icon.
  • [x] Dagger2 injection.
  • [x] Android Architecture Components.
  • [x] Room in-memory db.
  • [ ] The new Material components, fonts and styles
  • [ ] New layout for the feature overall.
  • [ ] Tablet layout.
  • [ ] Progressive samples (improved code readability and simpler to understand, at least I will try).
  • [ ] Improved live settings.
  • [ ] Transitions.

FlexibleAdapter features

  • [ ] Item factories from LiveData resources.
  • [ ] The old samples reviewed.
  • [ ] HorizontalLayout.
  • [ ] Advanced multi-filtering.
  • [ ] Nested RecyclerViews.
  • [ ] The new FlexibleItemDecorator at work.
  • [ ] Cards Slider example with FlexibleAdapter.
  • [ ] ...

But, what else would you like to try out with FlexibleAdapter in the demoApp? What are your expectations when study the code of a demoApp like this? And, which components you would like to see in the implementation?

davideas avatar May 30 '17 18:05 davideas

I could help set up a Travis CI configuration that runs all of the demo app's unit tests before allowing a pull request. I know running Espresso tests on an emulator isn't possible on Travis CI right now, but most of the tests are under Robolectric I believe. It would provide a simple layer of protection against breaking changes being introduced in a pull request.

magneticflux- avatar May 31 '17 13:05 magneticflux-

I hope demo app splits into several small projects. It's hard to implement only one functionality into my own apps.

tembem avatar Jun 16 '17 04:06 tembem

I would like to see expandable items in the demo app

kenshin171 avatar Jun 18 '17 07:06 kenshin171

I would also appreciate seeing more examples regarding multi-level expandable items. Our app uses recursive expansions of up to ~ 5 levels of depth and it's been a bit tricky setting everything up, more examples to go by would be great. Thanks!

gwailoTr0n5000 avatar Jun 20 '17 17:06 gwailoTr0n5000

@davideas , can you please provide some more gists on basic Use-cases in a sequential manner like creating a usual,old RecyclerView using this library , then how to modify the previous implementation into the one with multi select feature , then how to modify the previous implementation to the one with swipeable recycler views, then... something like that. I know there is the demo app, but every fragment in it seems to display a lot of features combined altogether. There are a lot of interfaces and callbacks that seems to confuse me.The app is acting more of a 'display-product' of the library than a 'guidance-product', the one which we can reverse code and understand the usage .

I hope am not offending you for asking so much, its just that am a beginner developer and this looks like not only a great library to solve many problems at once, but also to learn about better coding styles in general

root-ansh avatar May 13 '18 10:05 root-ansh

@chaostools, thanks for the message, in these days I started to create the new app (branch name: newApp). You can start to follow the development, but it will take months anyway: time is very limited. At the moment it does nothing, but some basic code is already there (nothing related to the adapter yet).

The new app is based on a new architecture with Dagger2, with the new Android Architecture Components, with Room and with several thirds libraries. I will try to insert your suggestion, however I want to continue to "present the product" of course, but breaking in smaller parts then, but still, many objects will be reused. I want to centralize the settings of each sample, so every sample runs in that mode provided by the selected options.

davideas avatar May 13 '18 12:05 davideas

Can you pl add support for multiselect showing contextual action bar that can maintain itself across orientation changes? Also pl put some examples with items having input fields like number picker, buttons, edittext etc. Some example having both vertical and horizontal recyclerviews.

Thanks

ShahoodulHassan avatar Jul 13 '18 20:07 ShahoodulHassan

Amazing news @davideas! I use FlexibleAdapter in two of my apps and the hardest part of learning how to use it was the complexity of the sample app.

For beginners, I would suggest including a simple, well commented implementation of FlexibleAdapter without any complexity such as Dependency Injection, Jetpack components, LiveData, or ViewBinding. Just a simple RecyclerView, static array of data in an ArrayList, and FlexibleAdapter.

Thinking back, another complication that made learning how to use this library harder is not knowing which file mapped to which screen. If the fragments were well commented and the MainActivity worked as a TOC, it would have been a lot easier.

Just a few suggestions from back when I was learning how to use this library!

rayliverified avatar Apr 28 '19 16:04 rayliverified