实例介绍
【实例简介】
FlexibleAdapter是一个RecyclerView的快速和多功能适配器库,它将多个功能集成到一个库中,从而显著改善用户体验。本项目介绍了FlexibleAdapter的主要功能和特点,以及如何在项目中使用该库。
【实例截图】
【核心代码】
文件清单
└── FlexibleAdapter-844a07002c3d2f2b68a6b26a25e8e401777c73e7
├── build.gradle
├── flexible-adapter
│ ├── build.gradle
│ ├── proguard-rules.pro
│ ├── src
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── eu
│ │ │ └── davidea
│ │ │ ├── fastscroller
│ │ │ │ ├── BubbleAnimator.java
│ │ │ │ ├── FastScroller.java
│ │ │ │ └── ScrollbarAnimator.java
│ │ │ ├── flexibleadapter
│ │ │ │ ├── AnimatorAdapter.java
│ │ │ │ ├── common
│ │ │ │ │ ├── FlexibleLayoutManager.java
│ │ │ │ │ └── IFlexibleLayoutManager.java
│ │ │ │ ├── FlexibleAdapter.java
│ │ │ │ ├── helpers
│ │ │ │ │ ├── ItemTouchHelperCallback.java
│ │ │ │ │ └── StickyHeaderHelper.java
│ │ │ │ ├── items
│ │ │ │ │ ├── AbstractExpandableHeaderItem.java
│ │ │ │ │ ├── AbstractExpandableItem.java
│ │ │ │ │ ├── AbstractFlexibleItem.java
│ │ │ │ │ ├── AbstractHeaderItem.java
│ │ │ │ │ ├── AbstractSectionableItem.java
│ │ │ │ │ ├── IExpandable.java
│ │ │ │ │ ├── IFilterable.java
│ │ │ │ │ ├── IFlexible.java
│ │ │ │ │ ├── IHeader.java
│ │ │ │ │ ├── IHolder.java
│ │ │ │ │ └── ISectionable.java
│ │ │ │ ├── Payload.java
│ │ │ │ ├── SelectableAdapter.java
│ │ │ │ └── utils
│ │ │ │ ├── LayoutUtils.java
│ │ │ │ ├── Logger.java
│ │ │ │ └── Log.java
│ │ │ └── viewholders
│ │ │ ├── AnimatedViewHolder.java
│ │ │ ├── ContentViewHolder.java
│ │ │ ├── ExpandableViewHolder.java
│ │ │ └── FlexibleViewHolder.java
│ │ └── res
│ │ ├── drawable
│ │ │ ├── fast_scroller_bubble.xml
│ │ │ └── fast_scroller_handle.xml
│ │ ├── drawable-v21
│ │ │ ├── fast_scroller_bubble.xml
│ │ │ └── fast_scroller_handle.xml
│ │ ├── layout
│ │ │ └── library_fast_scroller_layout.xml
│ │ └── values
│ │ ├── attrs.xml
│ │ └── colors.xml
│ └── version.properties
├── flexible-adapter-app
│ ├── build.gradle
│ ├── proguard-rules.pro
│ ├── src
│ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── ic_launcher-web.png
│ │ │ ├── java
│ │ │ │ └── eu
│ │ │ │ └── davidea
│ │ │ │ ├── common
│ │ │ │ │ ├── SimpleAnimatorListener.java
│ │ │ │ │ ├── SimpleOnTouchListener.java
│ │ │ │ │ ├── SimpleSeekBarChangeListener.java
│ │ │ │ │ └── SimpleTextWatcher.java
│ │ │ │ ├── samples
│ │ │ │ │ ├── anim
│ │ │ │ │ │ ├── FlipDownItemAnimator.java
│ │ │ │ │ │ ├── FromTopItemAnimator.java
│ │ │ │ │ │ ├── PendingItemAnimator.java
│ │ │ │ │ │ └── SlideItemAnimator.java
│ │ │ │ │ └── flexibleadapter
│ │ │ │ │ ├── animators
│ │ │ │ │ │ ├── FadeInDownItemAnimator.java
│ │ │ │ │ │ ├── FadeInItemAnimator.java
│ │ │ │ │ │ ├── FadeInLeftItemAnimator.java
│ │ │ │ │ │ ├── FadeInRightItemAnimator.java
│ │ │ │ │ │ ├── FadeInUpItemAnimator.java
│ │ │ │ │ │ ├── FlipInBottomXItemAnimator.java
│ │ │ │ │ │ ├── FlipInTopXItemAnimator.java
│ │ │ │ │ │ ├── GarageDoorItemAnimator.java
│ │ │ │ │ │ ├── LandingItemAnimator.java
│ │ │ │ │ │ ├── OvershootInLeftItemAnimator.java
│ │ │ │ │ │ ├── OvershootInRightItemAnimator.java
│ │ │ │ │ │ ├── ScaleInItemAnimator.java
│ │ │ │ │ │ ├── SlideInDownItemAnimator.java
│ │ │ │ │ │ ├── SlideInLeftItemAnimator.java
│ │ │ │ │ │ ├── SlideInRightItemAnimator.java
│ │ │ │ │ │ └── SlideInUpItemAnimator.java
│ │ │ │ │ ├── dialogs
│ │ │ │ │ │ ├── BottomSheetDecorationDialog.java
│ │ │ │ │ │ ├── BottomSheetSectionDialog.java
│ │ │ │ │ │ ├── EditItemDialog.java
│ │ │ │ │ │ ├── MessageDialog.java
│ │ │ │ │ │ ├── OnDecorationSelectedListener.java
│ │ │ │ │ │ └── OnParameterSelectedListener.java
│ │ │ │ │ ├── ExampleAdapter.java
│ │ │ │ │ ├── fragments
│ │ │ │ │ │ ├── AbstractFragment.java
│ │ │ │ │ │ ├── FragmentAnimators.java
│ │ │ │ │ │ ├── FragmentAsyncFilter.java
│ │ │ │ │ │ ├── FragmentDataBinding.java
│ │ │ │ │ │ ├── FragmentEndlessScrolling.java
│ │ │ │ │ │ ├── FragmentExpandableMultiLevel.java
│ │ │ │ │ │ ├── FragmentExpandableSections.java
│ │ │ │ │ │ ├── FragmentHeadersSections.java
│ │ │ │ │ │ ├── FragmentHolderSections.java
│ │ │ │ │ │ ├── FragmentInstagramHeaders.java
│ │ │ │ │ │ ├── FragmentOverall.java
│ │ │ │ │ │ ├── FragmentSelectionModes.java
│ │ │ │ │ │ ├── FragmentStaggeredLayout.java
│ │ │ │ │ │ ├── FragmentViewPager.java
│ │ │ │ │ │ └── OnFragmentInteractionListener.java
│ │ │ │ │ ├── holders
│ │ │ │ │ │ ├── HeaderHolder.java
│ │ │ │ │ │ └── ItemHolder.java
│ │ │ │ │ ├── items
│ │ │ │ │ │ ├── AbstractItem.java
│ │ │ │ │ │ ├── AnimatorExpandableItem.java
│ │ │ │ │ │ ├── AnimatorSubItem.java
│ │ │ │ │ │ ├── ConfigurationItem.java
│ │ │ │ │ │ ├── ExpandableHeaderItem.java
│ │ │ │ │ │ ├── ExpandableItem.java
│ │ │ │ │ │ ├── ExpandableLevel0Item.java
│ │ │ │ │ │ ├── ExpandableLevel1Item.java
│ │ │ │ │ │ ├── HeaderItem.java
│ │ │ │ │ │ ├── InstagramHeaderItem.java
│ │ │ │ │ │ ├── InstagramItem.java
│ │ │ │ │ │ ├── OverallItem.java
│ │ │ │ │ │ ├── ProgressItem.java
│ │ │ │ │ │ ├── ScrollableExpandableItem.java
│ │ │ │ │ │ ├── ScrollableFooterItem.java
│ │ │ │ │ │ ├── ScrollableLayoutItem.java
│ │ │ │ │ │ ├── ScrollableSubItem.java
│ │ │ │ │ │ ├── ScrollableULSItem.java
│ │ │ │ │ │ ├── ScrollableUseCaseItem.java
│ │ │ │ │ │ ├── SimpleItem.java
│ │ │ │ │ │ ├── StaggeredHeaderItem.java
│ │ │ │ │ │ ├── StaggeredItem.java
│ │ │ │ │ │ ├── StaggeredItemStatus.java
│ │ │ │ │ │ └── SubItem.java
│ │ │ │ │ ├── MainActivity.java
│ │ │ │ │ ├── models
│ │ │ │ │ │ ├── AbstractModel.java
│ │ │ │ │ │ ├── HeaderModel.java
│ │ │ │ │ │ └── ItemModel.java
│ │ │ │ │ ├── ModifiedFastScroller.java
│ │ │ │ │ ├── OverallAdapter.java
│ │ │ │ │ ├── services
│ │ │ │ │ │ ├── DatabaseConfiguration.java
│ │ │ │ │ │ ├── DatabaseService.java
│ │ │ │ │ │ ├── DatabaseType.java
│ │ │ │ │ │ └── InstagramRandomData.java
│ │ │ │ │ ├── SplashActivity.java
│ │ │ │ │ ├── ViewPagerActivity.java
│ │ │ │ │ └── views
│ │ │ │ │ ├── HeaderView.java
│ │ │ │ │ └── ProgressBar.java
│ │ │ │ └── utils
│ │ │ │ ├── ScrollAwareFABBehavior.java
│ │ │ │ └── Utils.java
│ │ │ └── res
│ │ │ ├── anim
│ │ │ │ ├── fab_slide_in_from_left.xml
│ │ │ │ ├── fab_slide_in_from_right.xml
│ │ │ │ ├── fab_slide_out_to_left.xml
│ │ │ │ └── fab_slide_out_to_right.xml
│ │ │ ├── drawable
│ │ │ │ ├── background_splash.xml
│ │ │ │ ├── button_mini_oval.xml
│ │ │ │ ├── divider.xml
│ │ │ │ ├── image_round_normal.xml
│ │ │ │ ├── image_round_selected.xml
│ │ │ │ ├── myrect.xml
│ │ │ │ ├── primary_text_selector_light.xml
│ │ │ │ ├── selector_item_grey.xml
│ │ │ │ ├── selector_item_light.xml
│ │ │ │ ├── selector_item_white.xml
│ │ │ │ └── side_nav_bar.xml
│ │ │ ├── drawable-hdpi
│ │ │ │ ├── button_delete.png
│ │ │ │ ├── divider_large.xml
│ │ │ │ ├── fab_add.png
│ │ │ │ ├── ic_account_circle_white_24dp.png
│ │ │ │ ├── ic_action_delete.png
│ │ │ │ ├── ic_action_search.png
│ │ │ │ ├── ic_animation_grey600_24dp.png
│ │ │ │ ├── ic_archive_white_24dp.png
│ │ │ │ ├── ic_arrow_down_bold_hexagon_outline_white_24dp.png
│ │ │ │ ├── ic_border_outer_white_24dp.png
│ │ │ │ ├── ic_call_merge_white_24dp.png
│ │ │ │ ├── ic_call_split_white_24dp.png
│ │ │ │ ├── ic_cancel_grey600_24dp.png
│ │ │ │ ├── ic_chart_gantt_grey600_24dp.png
│ │ │ │ ├── ic_check_white_24dp.png
│ │ │ │ ├── ic_clear_all_grey600_24dp.png
│ │ │ │ ├── ic_comment_grey600_24dp.png
│ │ │ │ ├── ic_creation_grey600_48dp.png
│ │ │ │ ├── ic_dashboard_grey600_24dp.png
│ │ │ │ ├── ic_dashboard_white_24dp.png
│ │ │ │ ├── ic_done_grey600_24dp.png
│ │ │ │ ├── ic_drag_handle_white_24dp.png
│ │ │ │ ├── ic_drag_vertical_grey600_24dp.png
│ │ │ │ ├── ic_drag_vertical_white_24dp.png
│ │ │ │ ├── ic_expandable_grey_600_24dp.png
│ │ │ │ ├── ic_expand_more_grey600_24dp.png
│ │ │ │ ├── ic_favorite_border_grey_600_24dp.png
│ │ │ │ ├── ic_favorite_red700_24dp.png
│ │ │ │ ├── ic_filter_outline_grey600_24dp.png
│ │ │ │ ├── ic_filter_remove_outline_grey600_48dp.png
│ │ │ │ ├── ic_github_circle_grey600_24dp.png
│ │ │ │ ├── ic_info_grey600_24dp.png
│ │ │ │ ├── ic_info_outline_white_24dp.png
│ │ │ │ ├── ic_instagram_grey600_24dp.png
│ │ │ │ ├── ic_link_grey_600_24dp.png
│ │ │ │ ├── ic_playlist_play_grey600_24dp.png
│ │ │ │ ├── ic_refresh_white_24dp.png
│ │ │ │ ├── ic_sections_grey600_24dp.png
│ │ │ │ ├── ic_select_all_grey600_24dp.png
│ │ │ │ ├── ic_select_all_white_24dp.png
│ │ │ │ ├── ic_select_inverse_grey600_24dp.png
│ │ │ │ ├── ic_select_off_white_24dp.png
│ │ │ │ ├── ic_select_white_24dp.png
│ │ │ │ ├── ic_settings_grey600_24dp.png
│ │ │ │ ├── ic_settings_white_24dp.png
│ │ │ │ ├── ic_share_grey600_24dp.png
│ │ │ │ ├── ic_sort_ascending_grey600_24dp.png
│ │ │ │ ├── ic_sort_ascending_white_24dp.png
│ │ │ │ ├── ic_sort_descending_grey600_24dp.png
│ │ │ │ ├── ic_sort_descending_white_24dp.png
│ │ │ │ ├── ic_sort_grey600_24dp.png
│ │ │ │ ├── ic_sort_white_24dp.png
│ │ │ │ ├── ic_swap_horiz_grey600_24dp.png
│ │ │ │ ├── ic_swap_vert_grey600_24dp.png
│ │ │ │ ├── ic_touch_app_white_24dp.png
│ │ │ │ ├── ic_undo_white_24dp.png
│ │ │ │ ├── ic_verified_user_grey600_24dp.png
│ │ │ │ ├── ic_view_agenda_grey600_24dp.png
│ │ │ │ ├── ic_view_agenda_white_24dp.png
│ │ │ │ ├── ic_view_carousel_grey600_24dp.png
│ │ │ │ ├── ic_view_column_grey600_24dp.png
│ │ │ │ ├── ic_view_grid_grey600_24dp.png
│ │ │ │ ├── ic_view_grid_white_24dp.png
│ │ │ │ ├── ic_view_headline_grey600_24dp.png
│ │ │ │ └── ic_xml_grey600_48dp.png
│ │ │ ├── drawable-mdpi
│ │ │ │ ├── button_delete.png
│ │ │ │ ├── fab_add.png
│ │ │ │ ├── ic_account_circle_white_24dp.png
│ │ │ │ ├── ic_action_delete.png
│ │ │ │ ├── ic_action_search.png
│ │ │ │ ├── ic_animation_grey600_24dp.png
│ │ │ │ ├── ic_archive_white_24dp.png
│ │ │ │ ├── ic_arrow_down_bold_hexagon_outline_white_24dp.png
│ │ │ │ ├── ic_border_outer_white_24dp.png
│ │ │ │ ├── ic_call_merge_white_24dp.png
│ │ │ │ ├── ic_call_split_white_24dp.png
│ │ │ │ ├── ic_cancel_grey600_24dp.png
│ │ │ │ ├── ic_chart_gantt_grey600_24dp.png
│ │ │ │ ├── ic_check_white_24dp.png
│ │ │ │ ├── ic_clear_all_grey600_24dp.png
│ │ │ │ ├── ic_comment_grey600_24dp.png
│ │ │ │ ├── ic_creation_grey600_48dp.png
│ │ │ │ ├── ic_dashboard_grey600_24dp.png
│ │ │ │ ├── ic_dashboard_white_24dp.png
│ │ │ │ ├── ic_done_grey600_24dp.png
│ │ │ │ ├── ic_drag_handle_white_24dp.png
│ │ │ │ ├── ic_drag_vertical_grey600_24dp.png
│ │ │ │ ├── ic_drag_vertical_white_24dp.png
│ │ │ │ ├── ic_expandable_grey_600_24dp.png
│ │ │ │ ├── ic_expand_more_grey600_24dp.png
│ │ │ │ ├── ic_favorite_border_grey_600_24dp.png
│ │ │ │ ├── ic_favorite_red700_24dp.png
│ │ │ │ ├── ic_filter_outline_grey600_24dp.png
│ │ │ │ ├── ic_filter_remove_outline_grey600_48dp.png
│ │ │ │ ├── ic_github_circle_grey600_24dp.png
│ │ │ │ ├── ic_info_grey600_24dp.png
│ │ │ │ ├── ic_info_outline_white_24dp.png
│ │ │ │ ├── ic_instagram_grey600_24dp.png
│ │ │ │ ├── ic_link_grey_600_24dp.png
│ │ │ │ ├── ic_playlist_play_grey600_24dp.png
│ │ │ │ ├── ic_refresh_white_24dp.png
│ │ │ │ ├── ic_sections_grey600_24dp.png
│ │ │ │ ├── ic_select_all_grey600_24dp.png
│ │ │ │ ├── ic_select_all_white_24dp.png
│ │ │ │ ├── ic_select_inverse_grey600_24dp.png
│ │ │ │ ├── ic_select_off_white_24dp.png
│ │ │ │ ├── ic_select_white_24dp.png
│ │ │ │ ├── ic_settings_grey600_24dp.png
│ │ │ │ ├── ic_settings_white_24dp.png
│ │ │ │ ├── ic_share_grey600_24dp.png
│ │ │ │ ├── ic_sort_ascending_grey600_24dp.png
│ │ │ │ ├── ic_sort_ascending_white_24dp.png
│ │ │ │ ├── ic_sort_descending_grey600_24dp.png
│ │ │ │ ├── ic_sort_descending_white_24dp.png
│ │ │ │ ├── ic_sort_grey600_24dp.png
│ │ │ │ ├── ic_sort_white_24dp.png
│ │ │ │ ├── ic_swap_horiz_grey600_24dp.png
│ │ │ │ ├── ic_swap_vert_grey600_24dp.png
│ │ │ │ ├── ic_touch_app_white_24dp.png
│ │ │ │ ├── ic_undo_white_24dp.png
│ │ │ │ ├── ic_verified_user_grey600_24dp.png
│ │ │ │ ├── ic_view_agenda_grey600_24dp.png
│ │ │ │ ├── ic_view_agenda_white_24dp.png
│ │ │ │ ├── ic_view_carousel_grey600_24dp.png
│ │ │ │ ├── ic_view_column_grey600_24dp.png
│ │ │ │ ├── ic_view_grid_grey600_24dp.png
│ │ │ │ ├── ic_view_grid_white_24dp.png
│ │ │ │ ├── ic_view_headline_grey600_24dp.png
│ │ │ │ └── ic_xml_grey600_48dp.png
│ │ │ ├── drawable-sw600dp-v13
│ │ │ │ └── background_splash.xml
│ │ │ ├── drawable-v21
│ │ │ │ ├── button_mini_oval.xml
│ │ │ │ ├── selector_item_grey.xml
│ │ │ │ ├── selector_item_light.xml
│ │ │ │ └── selector_item_white.xml
│ │ │ ├── drawable-xhdpi
│ │ │ │ ├── button_delete.png
│ │ │ │ ├── fab_add.png
│ │ │ │ ├── ic_account_circle_white_24dp.png
│ │ │ │ ├── ic_action_delete.png
│ │ │ │ ├── ic_action_search.png
│ │ │ │ ├── ic_animation_grey600_24dp.png
│ │ │ │ ├── ic_archive_white_24dp.png
│ │ │ │ ├── ic_arrow_down_bold_hexagon_outline_white_24dp.png
│ │ │ │ ├── ic_border_outer_white_24dp.png
│ │ │ │ ├── ic_call_merge_white_24dp.png
│ │ │ │ ├── ic_call_split_white_24dp.png
│ │ │ │ ├── ic_cancel_grey600_24dp.png
│ │ │ │ ├── ic_chart_gantt_grey600_24dp.png
│ │ │ │ ├── ic_check_white_24dp.png
│ │ │ │ ├── ic_clear_all_grey600_24dp.png
│ │ │ │ ├── ic_comment_grey600_24dp.png
│ │ │ │ ├── ic_creation_grey600_48dp.png
│ │ │ │ ├── ic_dashboard_grey600_24dp.png
│ │ │ │ ├── ic_dashboard_white_24dp.png
│ │ │ │ ├── ic_done_grey600_24dp.png
│ │ │ │ ├── ic_drag_handle_white_24dp.png
│ │ │ │ ├── ic_drag_vertical_grey600_24dp.png
│ │ │ │ ├── ic_drag_vertical_white_24dp.png
│ │ │ │ ├── ic_expandable_grey_600_24dp.png
│ │ │ │ ├── ic_expand_more_grey600_24dp.png
│ │ │ │ ├── ic_favorite_border_grey_600_24dp.png
│ │ │ │ ├── ic_favorite_red700_24dp.png
│ │ │ │ ├── ic_filter_outline_grey600_24dp.png
│ │ │ │ ├── ic_filter_remove_outline_grey600_48dp.png
│ │ │ │ ├── ic_github_circle_grey600_24dp.png
│ │ │ │ ├── ic_info_grey600_24dp.png
│ │ │ │ ├── ic_info_outline_white_24dp.png
│ │ │ │ ├── ic_instagram_grey600_24dp.png
│ │ │ │ ├── ic_link_grey_600_24dp.png
│ │ │ │ ├── ic_playlist_play_grey600_24dp.png
│ │ │ │ ├── ic_refresh_white_24dp.png
│ │ │ │ ├── ic_sections_grey600_24dp.png
│ │ │ │ ├── ic_select_all_grey600_24dp.png
│ │ │ │ ├── ic_select_all_white_24dp.png
│ │ │ │ ├── ic_select_inverse_grey600_24dp.png
│ │ │ │ ├── ic_select_off_white_24dp.png
│ │ │ │ ├── ic_select_white_24dp.png
│ │ │ │ ├── ic_settings_grey600_24dp.png
│ │ │ │ ├── ic_settings_white_24dp.png
│ │ │ │ ├── ic_share_grey600_24dp.png
│ │ │ │ ├── ic_sort_ascending_grey600_24dp.png
│ │ │ │ ├── ic_sort_ascending_white_24dp.png
│ │ │ │ ├── ic_sort_descending_grey600_24dp.png
│ │ │ │ ├── ic_sort_descending_white_24dp.png
│ │ │ │ ├── ic_sort_grey600_24dp.png
│ │ │ │ ├── ic_sort_white_24dp.png
│ │ │ │ ├── ic_swap_horiz_grey600_24dp.png
│ │ │ │ ├── ic_swap_vert_grey600_24dp.png
│ │ │ │ ├── ic_touch_app_white_24dp.png
│ │ │ │ ├── ic_undo_white_24dp.png
│ │ │ │ ├── ic_verified_user_grey600_24dp.png
│ │ │ │ ├── ic_view_agenda_grey600_24dp.png
│ │ │ │ ├── ic_view_agenda_white_24dp.png
│ │ │ │ ├── ic_view_carousel_grey600_24dp.png
│ │ │ │ ├── ic_view_column_grey600_24dp.png
│ │ │ │ ├── ic_view_grid_grey600_24dp.png
│ │ │ │ ├── ic_view_grid_white_24dp.png
│ │ │ │ ├── ic_view_headline_grey600_24dp.png
│ │ │ │ └── ic_xml_grey600_48dp.png
│ │ │ ├── drawable-xxhdpi
│ │ │ │ ├── button_delete.png
│ │ │ │ ├── fab_add.png
│ │ │ │ ├── ic_account_circle_white_24dp.png
│ │ │ │ ├── ic_action_delete.png
│ │ │ │ ├── ic_action_search.png
│ │ │ │ ├── ic_animation_grey600_24dp.png
│ │ │ │ ├── ic_archive_white_24dp.png
│ │ │ │ ├── ic_arrow_down_bold_hexagon_outline_white_24dp.png
│ │ │ │ ├── ic_border_outer_white_24dp.png
│ │ │ │ ├── ic_call_merge_white_24dp.png
│ │ │ │ ├── ic_call_split_white_24dp.png
│ │ │ │ ├── ic_cancel_grey600_24dp.png
│ │ │ │ ├── ic_chart_gantt_grey600_24dp.png
│ │ │ │ ├── ic_check_white_24dp.png
│ │ │ │ ├── ic_clear_all_grey600_24dp.png
│ │ │ │ ├── ic_comment_grey600_24dp.png
│ │ │ │ ├── ic_creation_grey600_48dp.png
│ │ │ │ ├── ic_dashboard_grey600_24dp.png
│ │ │ │ ├── ic_dashboard_white_24dp.png
│ │ │ │ ├── ic_done_grey600_24dp.png
│ │ │ │ ├── ic_drag_handle_white_24dp.png
│ │ │ │ ├── ic_drag_vertical_grey600_24dp.png
│ │ │ │ ├── ic_drag_vertical_white_24dp.png
│ │ │ │ ├── ic_expandable_grey_600_24dp.png
│ │ │ │ ├── ic_expand_more_grey600_24dp.png
│ │ │ │ ├── ic_favorite_border_grey_600_24dp.png
│ │ │ │ ├── ic_favorite_red700_24dp.png
│ │ │ │ ├── ic_filter_outline_grey600_24dp.png
│ │ │ │ ├── ic_filter_remove_outline_grey600_48dp.png
│ │ │ │ ├── ic_github_circle_grey600_24dp.png
│ │ │ │ ├── ic_info_grey600_24dp.png
│ │ │ │ ├── ic_info_outline_white_24dp.png
│ │ │ │ ├── ic_instagram_grey600_24dp.png
│ │ │ │ ├── ic_link_grey_600_24dp.png
│ │ │ │ ├── ic_playlist_play_grey600_24dp.png
│ │ │ │ ├── ic_refresh_white_24dp.png
│ │ │ │ ├── ic_sections_grey600_24dp.png
│ │ │ │ ├── ic_select_all_grey600_24dp.png
│ │ │ │ ├── ic_select_all_white_24dp.png
│ │ │ │ ├── ic_select_inverse_grey600_24dp.png
│ │ │ │ ├── ic_select_off_white_24dp.png
│ │ │ │ ├── ic_select_white_24dp.png
│ │ │ │ ├── ic_settings_grey600_24dp.png
│ │ │ │ ├── ic_settings_white_24dp.png
│ │ │ │ ├── ic_share_grey600_24dp.png
│ │ │ │ ├── ic_sort_ascending_grey600_24dp.png
│ │ │ │ ├── ic_sort_ascending_white_24dp.png
│ │ │ │ ├── ic_sort_descending_grey600_24dp.png
│ │ │ │ ├── ic_sort_descending_white_24dp.png
│ │ │ │ ├── ic_sort_grey600_24dp.png
│ │ │ │ ├── ic_sort_white_24dp.png
│ │ │ │ ├── ic_swap_horiz_grey600_24dp.png
│ │ │ │ ├── ic_swap_vert_grey600_24dp.png
│ │ │ │ ├── ic_touch_app_white_24dp.png
│ │ │ │ ├── ic_undo_white_24dp.png
│ │ │ │ ├── ic_verified_user_grey600_24dp.png
│ │ │ │ ├── ic_view_agenda_grey600_24dp.png
│ │ │ │ ├── ic_view_agenda_white_24dp.png
│ │ │ │ ├── ic_view_carousel_grey600_24dp.png
│ │ │ │ ├── ic_view_column_grey600_24dp.png
│ │ │ │ ├── ic_view_grid_grey600_24dp.png
│ │ │ │ ├── ic_view_grid_white_24dp.png
│ │ │ │ ├── ic_view_headline_grey600_24dp.png
│ │ │ │ ├── ic_xml_grey600_48dp.png
│ │ │ │ ├── logo_splash_144.png
│ │ │ │ └── logo_text_144.png
│ │ │ ├── drawable-xxxhdpi
│ │ │ │ ├── button_delete.png
│ │ │ │ ├── ic_account_circle_white_24dp.png
│ │ │ │ ├── ic_action_delete.png
│ │ │ │ ├── ic_action_search.png
│ │ │ │ ├── ic_animation_grey600_24dp.png
│ │ │ │ ├── ic_archive_white_24dp.png
│ │ │ │ ├── ic_arrow_down_bold_hexagon_outline_white_24dp.png
│ │ │ │ ├── ic_border_outer_white_24dp.png
│ │ │ │ ├── ic_call_merge_white_24dp.png
│ │ │ │ ├── ic_call_split_white_24dp.png
│ │ │ │ ├── ic_cancel_grey600_24dp.png
│ │ │ │ ├── ic_chart_gantt_grey600_24dp.png
│ │ │ │ ├── ic_check_white_24dp.png
│ │ │ │ ├── ic_clear_all_grey600_24dp.png
│ │ │ │ ├── ic_comment_grey600_24dp.png
│ │ │ │ ├── ic_creation_grey600_48dp.png
│ │ │ │ ├── ic_dashboard_grey600_24dp.png
│ │ │ │ ├── ic_dashboard_white_24dp.png
│ │ │ │ ├── ic_done_grey600_24dp.png
│ │ │ │ ├── ic_drag_handle_white_24dp.png
│ │ │ │ ├── ic_drag_vertical_grey600_24dp.png
│ │ │ │ ├── ic_drag_vertical_white_24dp.png
│ │ │ │ ├── ic_expandable_grey_600_24dp.png
│ │ │ │ ├── ic_expand_more_grey600_24dp.png
│ │ │ │ ├── ic_favorite_border_grey_600_24dp.png
│ │ │ │ ├── ic_favorite_red700_24dp.png
│ │ │ │ ├── ic_filter_outline_grey600_24dp.png
│ │ │ │ ├── ic_filter_remove_outline_grey600_48dp.png
│ │ │ │ ├── ic_github_circle_grey600_24dp.png
│ │ │ │ ├── ic_info_grey600_24dp.png
│ │ │ │ ├── ic_info_outline_white_24dp.png
│ │ │ │ ├── ic_instagram_grey600_24dp.png
│ │ │ │ ├── ic_link_grey_600_24dp.png
│ │ │ │ ├── ic_playlist_play_grey600_24dp.png
│ │ │ │ ├── ic_refresh_white_24dp.png
│ │ │ │ ├── ic_sections_grey600_24dp.png
│ │ │ │ ├── ic_select_all_grey600_24dp.png
│ │ │ │ ├── ic_select_all_white_24dp.png
│ │ │ │ ├── ic_select_inverse_grey600_24dp.png
│ │ │ │ ├── ic_select_off_white_24dp.png
│ │ │ │ ├── ic_select_white_24dp.png
│ │ │ │ ├── ic_settings_grey600_24dp.png
│ │ │ │ ├── ic_settings_white_24dp.png
│ │ │ │ ├── ic_share_grey600_24dp.png
│ │ │ │ ├── ic_sort_ascending_grey600_24dp.png
│ │ │ │ ├── ic_sort_ascending_white_24dp.png
│ │ │ │ ├── ic_sort_descending_grey600_24dp.png
│ │ │ │ ├── ic_sort_descending_white_24dp.png
│ │ │ │ ├── ic_sort_grey600_24dp.png
│ │ │ │ ├── ic_sort_white_24dp.png
│ │ │ │ ├── ic_swap_horiz_grey600_24dp.png
│ │ │ │ ├── ic_swap_vert_grey600_24dp.png
│ │ │ │ ├── ic_touch_app_white_24dp.png
│ │ │ │ ├── ic_undo_white_24dp.png
│ │ │ │ ├── ic_verified_user_grey600_24dp.png
│ │ │ │ ├── ic_view_agenda_grey600_24dp.png
│ │ │ │ ├── ic_view_agenda_white_24dp.png
│ │ │ │ ├── ic_view_carousel_grey600_24dp.png
│ │ │ │ ├── ic_view_column_grey600_24dp.png
│ │ │ │ ├── ic_view_grid_grey600_24dp.png
│ │ │ │ ├── ic_view_grid_white_24dp.png
│ │ │ │ ├── ic_view_headline_grey600_24dp.png
│ │ │ │ ├── ic_xml_grey600_48dp.png
│ │ │ │ ├── logo_splash_192.png
│ │ │ │ └── logo_text_192.png
│ │ │ ├── layout
│ │ │ │ ├── action_view_switch.xml
│ │ │ │ ├── activity_main_content.xml
│ │ │ │ ├── activity_main.xml
│ │ │ │ ├── activity_view_pager.xml
│ │ │ │ ├── bottom_sheet_headers_sections.xml
│ │ │ │ ├── bottom_sheet_item_decoration.xml
│ │ │ │ ├── dialog_edit_item.xml
│ │ │ │ ├── dialog_message.xml
│ │ │ │ ├── empty_view.xml
│ │ │ │ ├── fast_scroller.xml
│ │ │ │ ├── filter_view.xml
│ │ │ │ ├── fragment_recycler_view_data.xml
│ │ │ │ ├── fragment_recycler_view.xml
│ │ │ │ ├── fragment_view_pager.xml
│ │ │ │ ├── nav_header.xml
│ │ │ │ ├── progress_bar.xml
│ │ │ │ ├── progress_item.xml
│ │ │ │ ├── recycler_animator_expandable_item.xml
│ │ │ │ ├── recycler_animator_sub_item.xml
│ │ │ │ ├── recycler_configuration_item.xml
│ │ │ │ ├── recycler_expandable_header_item.xml
│ │ │ │ ├── recycler_expandable_item.xml
│ │ │ │ ├── recycler_header_item.xml
│ │ │ │ ├── recycler_holder_header.xml
│ │ │ │ ├── recycler_holder_item.xml
│ │ │ │ ├── recycler_instagram_header_item.xml
│ │ │ │ ├── recycler_instagram_item.xml
│ │ │ │ ├── recycler_overall_item.xml
│ │ │ │ ├── recycler_scrollable_expandable_item.xml
│ │ │ │ ├── recycler_scrollable_footer_item.xml
│ │ │ │ ├── recycler_scrollable_header_item.xml
│ │ │ │ ├── recycler_scrollable_layout_item.xml
│ │ │ │ ├── recycler_scrollable_sub_item.xml
│ │ │ │ ├── recycler_scrollable_uls_item.xml
│ │ │ │ ├── recycler_scrollable_usecase_item.xml
│ │ │ │ ├── recycler_simple_item.xml
│ │ │ │ ├── recycler_staggered_header_item.xml
│ │ │ │ ├── recycler_staggered_item.xml
│ │ │ │ ├── recycler_sub_item.xml
│ │ │ │ ├── recycler_vertical_item.xml
│ │ │ │ ├── reference_spinner_item.xml
│ │ │ │ ├── toolbar_titles.xml
│ │ │ │ └── toolbar.xml
│ │ │ ├── menu
│ │ │ │ ├── activity_entry_drawer.xml
│ │ │ │ ├── menu_animators.xml
│ │ │ │ ├── menu_context.xml
│ │ │ │ ├── menu_endless.xml
│ │ │ │ ├── menu_expandable.xml
│ │ │ │ ├── menu_filter.xml
│ │ │ │ ├── menu_holders.xml
│ │ │ │ ├── menu_overall.xml
│ │ │ │ ├── menu_sections.xml
│ │ │ │ ├── menu_selection_modes.xml
│ │ │ │ ├── menu_staggered_context.xml
│ │ │ │ ├── menu_staggered.xml
│ │ │ │ └── menu_view_pager.xml
│ │ │ ├── mipmap-hdpi
│ │ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxxhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ ├── values
│ │ │ │ ├── attrs.xml
│ │ │ │ ├── colors_material.xml
│ │ │ │ ├── color.xml
│ │ │ │ ├── dimens.xml
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
│ │ │ ├── values-land
│ │ │ │ └── dimens.xml
│ │ │ ├── values-v19
│ │ │ │ └── styles.xml
│ │ │ ├── values-v21
│ │ │ │ └── styles.xml
│ │ │ ├── values-w820dp
│ │ │ │ └── dimens.xml
│ │ │ ├── values-w820dp-land
│ │ │ │ └── dimens.xml
│ │ │ └── xml
│ │ │ └── searchable.xml
│ │ └── test
│ │ └── java
│ │ └── eu
│ │ └── davidea
│ │ └── flexibleadapter
│ │ ├── ClearItemsTest.java
│ │ ├── FilterTest.java
│ │ ├── HeadersSectionsTest.java
│ │ ├── ItemComparatorTest.java
│ │ ├── RemoveItemsTest.java
│ │ └── UpdateDataSetTest.java
│ └── version.properties
├── flexible-adapter-databinding
│ ├── build.gradle
│ ├── proguard-rules.pro
│ ├── src
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ └── java
│ │ └── eu
│ │ └── davidea
│ │ └── flexibleadapter
│ │ └── databinding
│ │ ├── BindingAdapters.java
│ │ └── BindingFlexibleAdapter.java
│ └── version.properties
├── flexible-adapter-livedata
│ ├── build.gradle
│ ├── proguard-rules.pro
│ ├── src
│ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ └── java
│ │ │ └── eu
│ │ │ └── davidea
│ │ │ └── flexibleadapter
│ │ │ └── livedata
│ │ │ ├── FlexibleFactory.java
│ │ │ ├── FlexibleItemProvider.java
│ │ │ └── FlexibleViewModel.java
│ │ └── test
│ │ └── java
│ │ └── eu
│ │ └── davidea
│ │ └── flexibleadapter
│ │ └── livedata
│ │ ├── FlexibleFactoryTest.java
│ │ ├── items
│ │ │ ├── FlexibleItem.java
│ │ │ ├── HeaderHolder.java
│ │ │ └── ItemHolder.java
│ │ └── models
│ │ ├── AbstractModel.java
│ │ ├── HeaderModel.java
│ │ └── ItemModel.java
│ └── version.properties
├── flexible-adapter-ui
│ ├── build.gradle
│ ├── proguard-rules.pro
│ ├── src
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ └── java
│ │ └── eu
│ │ └── davidea
│ │ └── flexibleadapter
│ │ ├── common
│ │ │ ├── FlexibleItemAnimator.java
│ │ │ ├── FlexibleItemDecoration.java
│ │ │ ├── SmoothScrollGridLayoutManager.java
│ │ │ ├── SmoothScrollLinearLayoutManager.java
│ │ │ ├── SmoothScrollStaggeredLayoutManager.java
│ │ │ └── TopSnappedSmoothScroller.java
│ │ ├── helpers
│ │ │ ├── ActionModeHelper.java
│ │ │ ├── AnimatorHelper.java
│ │ │ ├── EmptyViewHelper.java
│ │ │ └── UndoHelper.java
│ │ └── utils
│ │ ├── DrawableUtils.java
│ │ └── FlexibleUtils.java
│ └── version.properties
├── gradle
│ └── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradle.properties
├── gradlew
├── gradlew.bat
├── ISSUE_TEMPLATE.md
├── jfrog-artifactory-publish.gradle
├── jfrog-bintray-publish.gradle
├── LICENSE
├── maven-install.gradle
├── maven-publish.gradle
├── README.md
├── screenshots
│ ├── demo20_adapter_animations.png
│ ├── demo20_async_filter.png
│ ├── demo20_drag_linear.png
│ ├── demo20_dynamic_staggered_layout.png
│ ├── demo20_endless.png
│ ├── demo20_expandables.png
│ ├── demo20_instagram.png
│ ├── demo20_overall.png
│ ├── demo20_search_filter.png
│ ├── demo20_search_sections.png
│ ├── demo20_selection_coherence.png
│ ├── demo20_swipe-to-dismiss1.png
│ ├── demo20_swipe-to-dismiss2.png
│ ├── demo20_undo_single_selection.png
│ ├── demo20_view_pager.png
│ ├── demo30_adapter_animations.png
│ ├── demo30_async_filter.png
│ ├── demo30_drag_linear.png
│ ├── demo30_dynamic_staggered_layout.png
│ ├── demo30_endless.png
│ ├── demo30_expandables.png
│ ├── demo30_instagram.png
│ ├── demo30_overall.png
│ ├── demo30_search_filter.png
│ ├── demo30_search_sections.png
│ ├── demo30_selection_coherence.png
│ ├── demo30_swipe-to-dismiss1.png
│ ├── demo30_swipe-to-dismiss2.png
│ ├── demo30_undo_single_selection.png
│ ├── demo30_view_pager.png
│ ├── FlexibleAdapter.bmpr
│ ├── wiki_diagram.png
│ ├── wiki_endless_automatic_no_more_load.png
│ ├── wiki_fastscroller_accent_color.png
│ ├── wiki_fastscroller_bottom.png
│ ├── wiki_fastscroller_custom_text.png
│ ├── wiki_fastscroller_design.png
│ ├── wiki_fastscroller_top.png
│ ├── wiki_filter.png
│ ├── wiki_item_animation.png
│ ├── wiki_item_deco_dividers.png
│ ├── wiki_item_deco_edge.png
│ ├── wiki_item_deco_edge_settings.png
│ ├── wiki_item_deco_no_edge.png
│ ├── wiki_item_deco_no_edge_settings.png
│ ├── wiki_item_delegation.png
│ ├── wiki_layout_grid.png
│ ├── wiki_layout_linear.png
│ ├── wiki_layout_staggered_grid.png
│ ├── wiki_livedata.png
│ ├── wiki_shf.png
│ ├── wiki_sticky_header_1.png
│ ├── wiki_sticky_header_2.png
│ ├── wiki_sticky_header_3.png
│ └── wiki_sticky_header_4.png
└── settings.gradle
104 directories, 661 files
FlexibleAdapter是一个RecyclerView的快速和多功能适配器库,它将多个功能集成到一个库中,从而显著改善用户体验。本项目介绍了FlexibleAdapter的主要功能和特点,以及如何在项目中使用该库。
【实例截图】
【核心代码】
文件清单
└── FlexibleAdapter-844a07002c3d2f2b68a6b26a25e8e401777c73e7
├── build.gradle
├── flexible-adapter
│ ├── build.gradle
│ ├── proguard-rules.pro
│ ├── src
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── eu
│ │ │ └── davidea
│ │ │ ├── fastscroller
│ │ │ │ ├── BubbleAnimator.java
│ │ │ │ ├── FastScroller.java
│ │ │ │ └── ScrollbarAnimator.java
│ │ │ ├── flexibleadapter
│ │ │ │ ├── AnimatorAdapter.java
│ │ │ │ ├── common
│ │ │ │ │ ├── FlexibleLayoutManager.java
│ │ │ │ │ └── IFlexibleLayoutManager.java
│ │ │ │ ├── FlexibleAdapter.java
│ │ │ │ ├── helpers
│ │ │ │ │ ├── ItemTouchHelperCallback.java
│ │ │ │ │ └── StickyHeaderHelper.java
│ │ │ │ ├── items
│ │ │ │ │ ├── AbstractExpandableHeaderItem.java
│ │ │ │ │ ├── AbstractExpandableItem.java
│ │ │ │ │ ├── AbstractFlexibleItem.java
│ │ │ │ │ ├── AbstractHeaderItem.java
│ │ │ │ │ ├── AbstractSectionableItem.java
│ │ │ │ │ ├── IExpandable.java
│ │ │ │ │ ├── IFilterable.java
│ │ │ │ │ ├── IFlexible.java
│ │ │ │ │ ├── IHeader.java
│ │ │ │ │ ├── IHolder.java
│ │ │ │ │ └── ISectionable.java
│ │ │ │ ├── Payload.java
│ │ │ │ ├── SelectableAdapter.java
│ │ │ │ └── utils
│ │ │ │ ├── LayoutUtils.java
│ │ │ │ ├── Logger.java
│ │ │ │ └── Log.java
│ │ │ └── viewholders
│ │ │ ├── AnimatedViewHolder.java
│ │ │ ├── ContentViewHolder.java
│ │ │ ├── ExpandableViewHolder.java
│ │ │ └── FlexibleViewHolder.java
│ │ └── res
│ │ ├── drawable
│ │ │ ├── fast_scroller_bubble.xml
│ │ │ └── fast_scroller_handle.xml
│ │ ├── drawable-v21
│ │ │ ├── fast_scroller_bubble.xml
│ │ │ └── fast_scroller_handle.xml
│ │ ├── layout
│ │ │ └── library_fast_scroller_layout.xml
│ │ └── values
│ │ ├── attrs.xml
│ │ └── colors.xml
│ └── version.properties
├── flexible-adapter-app
│ ├── build.gradle
│ ├── proguard-rules.pro
│ ├── src
│ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── ic_launcher-web.png
│ │ │ ├── java
│ │ │ │ └── eu
│ │ │ │ └── davidea
│ │ │ │ ├── common
│ │ │ │ │ ├── SimpleAnimatorListener.java
│ │ │ │ │ ├── SimpleOnTouchListener.java
│ │ │ │ │ ├── SimpleSeekBarChangeListener.java
│ │ │ │ │ └── SimpleTextWatcher.java
│ │ │ │ ├── samples
│ │ │ │ │ ├── anim
│ │ │ │ │ │ ├── FlipDownItemAnimator.java
│ │ │ │ │ │ ├── FromTopItemAnimator.java
│ │ │ │ │ │ ├── PendingItemAnimator.java
│ │ │ │ │ │ └── SlideItemAnimator.java
│ │ │ │ │ └── flexibleadapter
│ │ │ │ │ ├── animators
│ │ │ │ │ │ ├── FadeInDownItemAnimator.java
│ │ │ │ │ │ ├── FadeInItemAnimator.java
│ │ │ │ │ │ ├── FadeInLeftItemAnimator.java
│ │ │ │ │ │ ├── FadeInRightItemAnimator.java
│ │ │ │ │ │ ├── FadeInUpItemAnimator.java
│ │ │ │ │ │ ├── FlipInBottomXItemAnimator.java
│ │ │ │ │ │ ├── FlipInTopXItemAnimator.java
│ │ │ │ │ │ ├── GarageDoorItemAnimator.java
│ │ │ │ │ │ ├── LandingItemAnimator.java
│ │ │ │ │ │ ├── OvershootInLeftItemAnimator.java
│ │ │ │ │ │ ├── OvershootInRightItemAnimator.java
│ │ │ │ │ │ ├── ScaleInItemAnimator.java
│ │ │ │ │ │ ├── SlideInDownItemAnimator.java
│ │ │ │ │ │ ├── SlideInLeftItemAnimator.java
│ │ │ │ │ │ ├── SlideInRightItemAnimator.java
│ │ │ │ │ │ └── SlideInUpItemAnimator.java
│ │ │ │ │ ├── dialogs
│ │ │ │ │ │ ├── BottomSheetDecorationDialog.java
│ │ │ │ │ │ ├── BottomSheetSectionDialog.java
│ │ │ │ │ │ ├── EditItemDialog.java
│ │ │ │ │ │ ├── MessageDialog.java
│ │ │ │ │ │ ├── OnDecorationSelectedListener.java
│ │ │ │ │ │ └── OnParameterSelectedListener.java
│ │ │ │ │ ├── ExampleAdapter.java
│ │ │ │ │ ├── fragments
│ │ │ │ │ │ ├── AbstractFragment.java
│ │ │ │ │ │ ├── FragmentAnimators.java
│ │ │ │ │ │ ├── FragmentAsyncFilter.java
│ │ │ │ │ │ ├── FragmentDataBinding.java
│ │ │ │ │ │ ├── FragmentEndlessScrolling.java
│ │ │ │ │ │ ├── FragmentExpandableMultiLevel.java
│ │ │ │ │ │ ├── FragmentExpandableSections.java
│ │ │ │ │ │ ├── FragmentHeadersSections.java
│ │ │ │ │ │ ├── FragmentHolderSections.java
│ │ │ │ │ │ ├── FragmentInstagramHeaders.java
│ │ │ │ │ │ ├── FragmentOverall.java
│ │ │ │ │ │ ├── FragmentSelectionModes.java
│ │ │ │ │ │ ├── FragmentStaggeredLayout.java
│ │ │ │ │ │ ├── FragmentViewPager.java
│ │ │ │ │ │ └── OnFragmentInteractionListener.java
│ │ │ │ │ ├── holders
│ │ │ │ │ │ ├── HeaderHolder.java
│ │ │ │ │ │ └── ItemHolder.java
│ │ │ │ │ ├── items
│ │ │ │ │ │ ├── AbstractItem.java
│ │ │ │ │ │ ├── AnimatorExpandableItem.java
│ │ │ │ │ │ ├── AnimatorSubItem.java
│ │ │ │ │ │ ├── ConfigurationItem.java
│ │ │ │ │ │ ├── ExpandableHeaderItem.java
│ │ │ │ │ │ ├── ExpandableItem.java
│ │ │ │ │ │ ├── ExpandableLevel0Item.java
│ │ │ │ │ │ ├── ExpandableLevel1Item.java
│ │ │ │ │ │ ├── HeaderItem.java
│ │ │ │ │ │ ├── InstagramHeaderItem.java
│ │ │ │ │ │ ├── InstagramItem.java
│ │ │ │ │ │ ├── OverallItem.java
│ │ │ │ │ │ ├── ProgressItem.java
│ │ │ │ │ │ ├── ScrollableExpandableItem.java
│ │ │ │ │ │ ├── ScrollableFooterItem.java
│ │ │ │ │ │ ├── ScrollableLayoutItem.java
│ │ │ │ │ │ ├── ScrollableSubItem.java
│ │ │ │ │ │ ├── ScrollableULSItem.java
│ │ │ │ │ │ ├── ScrollableUseCaseItem.java
│ │ │ │ │ │ ├── SimpleItem.java
│ │ │ │ │ │ ├── StaggeredHeaderItem.java
│ │ │ │ │ │ ├── StaggeredItem.java
│ │ │ │ │ │ ├── StaggeredItemStatus.java
│ │ │ │ │ │ └── SubItem.java
│ │ │ │ │ ├── MainActivity.java
│ │ │ │ │ ├── models
│ │ │ │ │ │ ├── AbstractModel.java
│ │ │ │ │ │ ├── HeaderModel.java
│ │ │ │ │ │ └── ItemModel.java
│ │ │ │ │ ├── ModifiedFastScroller.java
│ │ │ │ │ ├── OverallAdapter.java
│ │ │ │ │ ├── services
│ │ │ │ │ │ ├── DatabaseConfiguration.java
│ │ │ │ │ │ ├── DatabaseService.java
│ │ │ │ │ │ ├── DatabaseType.java
│ │ │ │ │ │ └── InstagramRandomData.java
│ │ │ │ │ ├── SplashActivity.java
│ │ │ │ │ ├── ViewPagerActivity.java
│ │ │ │ │ └── views
│ │ │ │ │ ├── HeaderView.java
│ │ │ │ │ └── ProgressBar.java
│ │ │ │ └── utils
│ │ │ │ ├── ScrollAwareFABBehavior.java
│ │ │ │ └── Utils.java
│ │ │ └── res
│ │ │ ├── anim
│ │ │ │ ├── fab_slide_in_from_left.xml
│ │ │ │ ├── fab_slide_in_from_right.xml
│ │ │ │ ├── fab_slide_out_to_left.xml
│ │ │ │ └── fab_slide_out_to_right.xml
│ │ │ ├── drawable
│ │ │ │ ├── background_splash.xml
│ │ │ │ ├── button_mini_oval.xml
│ │ │ │ ├── divider.xml
│ │ │ │ ├── image_round_normal.xml
│ │ │ │ ├── image_round_selected.xml
│ │ │ │ ├── myrect.xml
│ │ │ │ ├── primary_text_selector_light.xml
│ │ │ │ ├── selector_item_grey.xml
│ │ │ │ ├── selector_item_light.xml
│ │ │ │ ├── selector_item_white.xml
│ │ │ │ └── side_nav_bar.xml
│ │ │ ├── drawable-hdpi
│ │ │ │ ├── button_delete.png
│ │ │ │ ├── divider_large.xml
│ │ │ │ ├── fab_add.png
│ │ │ │ ├── ic_account_circle_white_24dp.png
│ │ │ │ ├── ic_action_delete.png
│ │ │ │ ├── ic_action_search.png
│ │ │ │ ├── ic_animation_grey600_24dp.png
│ │ │ │ ├── ic_archive_white_24dp.png
│ │ │ │ ├── ic_arrow_down_bold_hexagon_outline_white_24dp.png
│ │ │ │ ├── ic_border_outer_white_24dp.png
│ │ │ │ ├── ic_call_merge_white_24dp.png
│ │ │ │ ├── ic_call_split_white_24dp.png
│ │ │ │ ├── ic_cancel_grey600_24dp.png
│ │ │ │ ├── ic_chart_gantt_grey600_24dp.png
│ │ │ │ ├── ic_check_white_24dp.png
│ │ │ │ ├── ic_clear_all_grey600_24dp.png
│ │ │ │ ├── ic_comment_grey600_24dp.png
│ │ │ │ ├── ic_creation_grey600_48dp.png
│ │ │ │ ├── ic_dashboard_grey600_24dp.png
│ │ │ │ ├── ic_dashboard_white_24dp.png
│ │ │ │ ├── ic_done_grey600_24dp.png
│ │ │ │ ├── ic_drag_handle_white_24dp.png
│ │ │ │ ├── ic_drag_vertical_grey600_24dp.png
│ │ │ │ ├── ic_drag_vertical_white_24dp.png
│ │ │ │ ├── ic_expandable_grey_600_24dp.png
│ │ │ │ ├── ic_expand_more_grey600_24dp.png
│ │ │ │ ├── ic_favorite_border_grey_600_24dp.png
│ │ │ │ ├── ic_favorite_red700_24dp.png
│ │ │ │ ├── ic_filter_outline_grey600_24dp.png
│ │ │ │ ├── ic_filter_remove_outline_grey600_48dp.png
│ │ │ │ ├── ic_github_circle_grey600_24dp.png
│ │ │ │ ├── ic_info_grey600_24dp.png
│ │ │ │ ├── ic_info_outline_white_24dp.png
│ │ │ │ ├── ic_instagram_grey600_24dp.png
│ │ │ │ ├── ic_link_grey_600_24dp.png
│ │ │ │ ├── ic_playlist_play_grey600_24dp.png
│ │ │ │ ├── ic_refresh_white_24dp.png
│ │ │ │ ├── ic_sections_grey600_24dp.png
│ │ │ │ ├── ic_select_all_grey600_24dp.png
│ │ │ │ ├── ic_select_all_white_24dp.png
│ │ │ │ ├── ic_select_inverse_grey600_24dp.png
│ │ │ │ ├── ic_select_off_white_24dp.png
│ │ │ │ ├── ic_select_white_24dp.png
│ │ │ │ ├── ic_settings_grey600_24dp.png
│ │ │ │ ├── ic_settings_white_24dp.png
│ │ │ │ ├── ic_share_grey600_24dp.png
│ │ │ │ ├── ic_sort_ascending_grey600_24dp.png
│ │ │ │ ├── ic_sort_ascending_white_24dp.png
│ │ │ │ ├── ic_sort_descending_grey600_24dp.png
│ │ │ │ ├── ic_sort_descending_white_24dp.png
│ │ │ │ ├── ic_sort_grey600_24dp.png
│ │ │ │ ├── ic_sort_white_24dp.png
│ │ │ │ ├── ic_swap_horiz_grey600_24dp.png
│ │ │ │ ├── ic_swap_vert_grey600_24dp.png
│ │ │ │ ├── ic_touch_app_white_24dp.png
│ │ │ │ ├── ic_undo_white_24dp.png
│ │ │ │ ├── ic_verified_user_grey600_24dp.png
│ │ │ │ ├── ic_view_agenda_grey600_24dp.png
│ │ │ │ ├── ic_view_agenda_white_24dp.png
│ │ │ │ ├── ic_view_carousel_grey600_24dp.png
│ │ │ │ ├── ic_view_column_grey600_24dp.png
│ │ │ │ ├── ic_view_grid_grey600_24dp.png
│ │ │ │ ├── ic_view_grid_white_24dp.png
│ │ │ │ ├── ic_view_headline_grey600_24dp.png
│ │ │ │ └── ic_xml_grey600_48dp.png
│ │ │ ├── drawable-mdpi
│ │ │ │ ├── button_delete.png
│ │ │ │ ├── fab_add.png
│ │ │ │ ├── ic_account_circle_white_24dp.png
│ │ │ │ ├── ic_action_delete.png
│ │ │ │ ├── ic_action_search.png
│ │ │ │ ├── ic_animation_grey600_24dp.png
│ │ │ │ ├── ic_archive_white_24dp.png
│ │ │ │ ├── ic_arrow_down_bold_hexagon_outline_white_24dp.png
│ │ │ │ ├── ic_border_outer_white_24dp.png
│ │ │ │ ├── ic_call_merge_white_24dp.png
│ │ │ │ ├── ic_call_split_white_24dp.png
│ │ │ │ ├── ic_cancel_grey600_24dp.png
│ │ │ │ ├── ic_chart_gantt_grey600_24dp.png
│ │ │ │ ├── ic_check_white_24dp.png
│ │ │ │ ├── ic_clear_all_grey600_24dp.png
│ │ │ │ ├── ic_comment_grey600_24dp.png
│ │ │ │ ├── ic_creation_grey600_48dp.png
│ │ │ │ ├── ic_dashboard_grey600_24dp.png
│ │ │ │ ├── ic_dashboard_white_24dp.png
│ │ │ │ ├── ic_done_grey600_24dp.png
│ │ │ │ ├── ic_drag_handle_white_24dp.png
│ │ │ │ ├── ic_drag_vertical_grey600_24dp.png
│ │ │ │ ├── ic_drag_vertical_white_24dp.png
│ │ │ │ ├── ic_expandable_grey_600_24dp.png
│ │ │ │ ├── ic_expand_more_grey600_24dp.png
│ │ │ │ ├── ic_favorite_border_grey_600_24dp.png
│ │ │ │ ├── ic_favorite_red700_24dp.png
│ │ │ │ ├── ic_filter_outline_grey600_24dp.png
│ │ │ │ ├── ic_filter_remove_outline_grey600_48dp.png
│ │ │ │ ├── ic_github_circle_grey600_24dp.png
│ │ │ │ ├── ic_info_grey600_24dp.png
│ │ │ │ ├── ic_info_outline_white_24dp.png
│ │ │ │ ├── ic_instagram_grey600_24dp.png
│ │ │ │ ├── ic_link_grey_600_24dp.png
│ │ │ │ ├── ic_playlist_play_grey600_24dp.png
│ │ │ │ ├── ic_refresh_white_24dp.png
│ │ │ │ ├── ic_sections_grey600_24dp.png
│ │ │ │ ├── ic_select_all_grey600_24dp.png
│ │ │ │ ├── ic_select_all_white_24dp.png
│ │ │ │ ├── ic_select_inverse_grey600_24dp.png
│ │ │ │ ├── ic_select_off_white_24dp.png
│ │ │ │ ├── ic_select_white_24dp.png
│ │ │ │ ├── ic_settings_grey600_24dp.png
│ │ │ │ ├── ic_settings_white_24dp.png
│ │ │ │ ├── ic_share_grey600_24dp.png
│ │ │ │ ├── ic_sort_ascending_grey600_24dp.png
│ │ │ │ ├── ic_sort_ascending_white_24dp.png
│ │ │ │ ├── ic_sort_descending_grey600_24dp.png
│ │ │ │ ├── ic_sort_descending_white_24dp.png
│ │ │ │ ├── ic_sort_grey600_24dp.png
│ │ │ │ ├── ic_sort_white_24dp.png
│ │ │ │ ├── ic_swap_horiz_grey600_24dp.png
│ │ │ │ ├── ic_swap_vert_grey600_24dp.png
│ │ │ │ ├── ic_touch_app_white_24dp.png
│ │ │ │ ├── ic_undo_white_24dp.png
│ │ │ │ ├── ic_verified_user_grey600_24dp.png
│ │ │ │ ├── ic_view_agenda_grey600_24dp.png
│ │ │ │ ├── ic_view_agenda_white_24dp.png
│ │ │ │ ├── ic_view_carousel_grey600_24dp.png
│ │ │ │ ├── ic_view_column_grey600_24dp.png
│ │ │ │ ├── ic_view_grid_grey600_24dp.png
│ │ │ │ ├── ic_view_grid_white_24dp.png
│ │ │ │ ├── ic_view_headline_grey600_24dp.png
│ │ │ │ └── ic_xml_grey600_48dp.png
│ │ │ ├── drawable-sw600dp-v13
│ │ │ │ └── background_splash.xml
│ │ │ ├── drawable-v21
│ │ │ │ ├── button_mini_oval.xml
│ │ │ │ ├── selector_item_grey.xml
│ │ │ │ ├── selector_item_light.xml
│ │ │ │ └── selector_item_white.xml
│ │ │ ├── drawable-xhdpi
│ │ │ │ ├── button_delete.png
│ │ │ │ ├── fab_add.png
│ │ │ │ ├── ic_account_circle_white_24dp.png
│ │ │ │ ├── ic_action_delete.png
│ │ │ │ ├── ic_action_search.png
│ │ │ │ ├── ic_animation_grey600_24dp.png
│ │ │ │ ├── ic_archive_white_24dp.png
│ │ │ │ ├── ic_arrow_down_bold_hexagon_outline_white_24dp.png
│ │ │ │ ├── ic_border_outer_white_24dp.png
│ │ │ │ ├── ic_call_merge_white_24dp.png
│ │ │ │ ├── ic_call_split_white_24dp.png
│ │ │ │ ├── ic_cancel_grey600_24dp.png
│ │ │ │ ├── ic_chart_gantt_grey600_24dp.png
│ │ │ │ ├── ic_check_white_24dp.png
│ │ │ │ ├── ic_clear_all_grey600_24dp.png
│ │ │ │ ├── ic_comment_grey600_24dp.png
│ │ │ │ ├── ic_creation_grey600_48dp.png
│ │ │ │ ├── ic_dashboard_grey600_24dp.png
│ │ │ │ ├── ic_dashboard_white_24dp.png
│ │ │ │ ├── ic_done_grey600_24dp.png
│ │ │ │ ├── ic_drag_handle_white_24dp.png
│ │ │ │ ├── ic_drag_vertical_grey600_24dp.png
│ │ │ │ ├── ic_drag_vertical_white_24dp.png
│ │ │ │ ├── ic_expandable_grey_600_24dp.png
│ │ │ │ ├── ic_expand_more_grey600_24dp.png
│ │ │ │ ├── ic_favorite_border_grey_600_24dp.png
│ │ │ │ ├── ic_favorite_red700_24dp.png
│ │ │ │ ├── ic_filter_outline_grey600_24dp.png
│ │ │ │ ├── ic_filter_remove_outline_grey600_48dp.png
│ │ │ │ ├── ic_github_circle_grey600_24dp.png
│ │ │ │ ├── ic_info_grey600_24dp.png
│ │ │ │ ├── ic_info_outline_white_24dp.png
│ │ │ │ ├── ic_instagram_grey600_24dp.png
│ │ │ │ ├── ic_link_grey_600_24dp.png
│ │ │ │ ├── ic_playlist_play_grey600_24dp.png
│ │ │ │ ├── ic_refresh_white_24dp.png
│ │ │ │ ├── ic_sections_grey600_24dp.png
│ │ │ │ ├── ic_select_all_grey600_24dp.png
│ │ │ │ ├── ic_select_all_white_24dp.png
│ │ │ │ ├── ic_select_inverse_grey600_24dp.png
│ │ │ │ ├── ic_select_off_white_24dp.png
│ │ │ │ ├── ic_select_white_24dp.png
│ │ │ │ ├── ic_settings_grey600_24dp.png
│ │ │ │ ├── ic_settings_white_24dp.png
│ │ │ │ ├── ic_share_grey600_24dp.png
│ │ │ │ ├── ic_sort_ascending_grey600_24dp.png
│ │ │ │ ├── ic_sort_ascending_white_24dp.png
│ │ │ │ ├── ic_sort_descending_grey600_24dp.png
│ │ │ │ ├── ic_sort_descending_white_24dp.png
│ │ │ │ ├── ic_sort_grey600_24dp.png
│ │ │ │ ├── ic_sort_white_24dp.png
│ │ │ │ ├── ic_swap_horiz_grey600_24dp.png
│ │ │ │ ├── ic_swap_vert_grey600_24dp.png
│ │ │ │ ├── ic_touch_app_white_24dp.png
│ │ │ │ ├── ic_undo_white_24dp.png
│ │ │ │ ├── ic_verified_user_grey600_24dp.png
│ │ │ │ ├── ic_view_agenda_grey600_24dp.png
│ │ │ │ ├── ic_view_agenda_white_24dp.png
│ │ │ │ ├── ic_view_carousel_grey600_24dp.png
│ │ │ │ ├── ic_view_column_grey600_24dp.png
│ │ │ │ ├── ic_view_grid_grey600_24dp.png
│ │ │ │ ├── ic_view_grid_white_24dp.png
│ │ │ │ ├── ic_view_headline_grey600_24dp.png
│ │ │ │ └── ic_xml_grey600_48dp.png
│ │ │ ├── drawable-xxhdpi
│ │ │ │ ├── button_delete.png
│ │ │ │ ├── fab_add.png
│ │ │ │ ├── ic_account_circle_white_24dp.png
│ │ │ │ ├── ic_action_delete.png
│ │ │ │ ├── ic_action_search.png
│ │ │ │ ├── ic_animation_grey600_24dp.png
│ │ │ │ ├── ic_archive_white_24dp.png
│ │ │ │ ├── ic_arrow_down_bold_hexagon_outline_white_24dp.png
│ │ │ │ ├── ic_border_outer_white_24dp.png
│ │ │ │ ├── ic_call_merge_white_24dp.png
│ │ │ │ ├── ic_call_split_white_24dp.png
│ │ │ │ ├── ic_cancel_grey600_24dp.png
│ │ │ │ ├── ic_chart_gantt_grey600_24dp.png
│ │ │ │ ├── ic_check_white_24dp.png
│ │ │ │ ├── ic_clear_all_grey600_24dp.png
│ │ │ │ ├── ic_comment_grey600_24dp.png
│ │ │ │ ├── ic_creation_grey600_48dp.png
│ │ │ │ ├── ic_dashboard_grey600_24dp.png
│ │ │ │ ├── ic_dashboard_white_24dp.png
│ │ │ │ ├── ic_done_grey600_24dp.png
│ │ │ │ ├── ic_drag_handle_white_24dp.png
│ │ │ │ ├── ic_drag_vertical_grey600_24dp.png
│ │ │ │ ├── ic_drag_vertical_white_24dp.png
│ │ │ │ ├── ic_expandable_grey_600_24dp.png
│ │ │ │ ├── ic_expand_more_grey600_24dp.png
│ │ │ │ ├── ic_favorite_border_grey_600_24dp.png
│ │ │ │ ├── ic_favorite_red700_24dp.png
│ │ │ │ ├── ic_filter_outline_grey600_24dp.png
│ │ │ │ ├── ic_filter_remove_outline_grey600_48dp.png
│ │ │ │ ├── ic_github_circle_grey600_24dp.png
│ │ │ │ ├── ic_info_grey600_24dp.png
│ │ │ │ ├── ic_info_outline_white_24dp.png
│ │ │ │ ├── ic_instagram_grey600_24dp.png
│ │ │ │ ├── ic_link_grey_600_24dp.png
│ │ │ │ ├── ic_playlist_play_grey600_24dp.png
│ │ │ │ ├── ic_refresh_white_24dp.png
│ │ │ │ ├── ic_sections_grey600_24dp.png
│ │ │ │ ├── ic_select_all_grey600_24dp.png
│ │ │ │ ├── ic_select_all_white_24dp.png
│ │ │ │ ├── ic_select_inverse_grey600_24dp.png
│ │ │ │ ├── ic_select_off_white_24dp.png
│ │ │ │ ├── ic_select_white_24dp.png
│ │ │ │ ├── ic_settings_grey600_24dp.png
│ │ │ │ ├── ic_settings_white_24dp.png
│ │ │ │ ├── ic_share_grey600_24dp.png
│ │ │ │ ├── ic_sort_ascending_grey600_24dp.png
│ │ │ │ ├── ic_sort_ascending_white_24dp.png
│ │ │ │ ├── ic_sort_descending_grey600_24dp.png
│ │ │ │ ├── ic_sort_descending_white_24dp.png
│ │ │ │ ├── ic_sort_grey600_24dp.png
│ │ │ │ ├── ic_sort_white_24dp.png
│ │ │ │ ├── ic_swap_horiz_grey600_24dp.png
│ │ │ │ ├── ic_swap_vert_grey600_24dp.png
│ │ │ │ ├── ic_touch_app_white_24dp.png
│ │ │ │ ├── ic_undo_white_24dp.png
│ │ │ │ ├── ic_verified_user_grey600_24dp.png
│ │ │ │ ├── ic_view_agenda_grey600_24dp.png
│ │ │ │ ├── ic_view_agenda_white_24dp.png
│ │ │ │ ├── ic_view_carousel_grey600_24dp.png
│ │ │ │ ├── ic_view_column_grey600_24dp.png
│ │ │ │ ├── ic_view_grid_grey600_24dp.png
│ │ │ │ ├── ic_view_grid_white_24dp.png
│ │ │ │ ├── ic_view_headline_grey600_24dp.png
│ │ │ │ ├── ic_xml_grey600_48dp.png
│ │ │ │ ├── logo_splash_144.png
│ │ │ │ └── logo_text_144.png
│ │ │ ├── drawable-xxxhdpi
│ │ │ │ ├── button_delete.png
│ │ │ │ ├── ic_account_circle_white_24dp.png
│ │ │ │ ├── ic_action_delete.png
│ │ │ │ ├── ic_action_search.png
│ │ │ │ ├── ic_animation_grey600_24dp.png
│ │ │ │ ├── ic_archive_white_24dp.png
│ │ │ │ ├── ic_arrow_down_bold_hexagon_outline_white_24dp.png
│ │ │ │ ├── ic_border_outer_white_24dp.png
│ │ │ │ ├── ic_call_merge_white_24dp.png
│ │ │ │ ├── ic_call_split_white_24dp.png
│ │ │ │ ├── ic_cancel_grey600_24dp.png
│ │ │ │ ├── ic_chart_gantt_grey600_24dp.png
│ │ │ │ ├── ic_check_white_24dp.png
│ │ │ │ ├── ic_clear_all_grey600_24dp.png
│ │ │ │ ├── ic_comment_grey600_24dp.png
│ │ │ │ ├── ic_creation_grey600_48dp.png
│ │ │ │ ├── ic_dashboard_grey600_24dp.png
│ │ │ │ ├── ic_dashboard_white_24dp.png
│ │ │ │ ├── ic_done_grey600_24dp.png
│ │ │ │ ├── ic_drag_handle_white_24dp.png
│ │ │ │ ├── ic_drag_vertical_grey600_24dp.png
│ │ │ │ ├── ic_drag_vertical_white_24dp.png
│ │ │ │ ├── ic_expandable_grey_600_24dp.png
│ │ │ │ ├── ic_expand_more_grey600_24dp.png
│ │ │ │ ├── ic_favorite_border_grey_600_24dp.png
│ │ │ │ ├── ic_favorite_red700_24dp.png
│ │ │ │ ├── ic_filter_outline_grey600_24dp.png
│ │ │ │ ├── ic_filter_remove_outline_grey600_48dp.png
│ │ │ │ ├── ic_github_circle_grey600_24dp.png
│ │ │ │ ├── ic_info_grey600_24dp.png
│ │ │ │ ├── ic_info_outline_white_24dp.png
│ │ │ │ ├── ic_instagram_grey600_24dp.png
│ │ │ │ ├── ic_link_grey_600_24dp.png
│ │ │ │ ├── ic_playlist_play_grey600_24dp.png
│ │ │ │ ├── ic_refresh_white_24dp.png
│ │ │ │ ├── ic_sections_grey600_24dp.png
│ │ │ │ ├── ic_select_all_grey600_24dp.png
│ │ │ │ ├── ic_select_all_white_24dp.png
│ │ │ │ ├── ic_select_inverse_grey600_24dp.png
│ │ │ │ ├── ic_select_off_white_24dp.png
│ │ │ │ ├── ic_select_white_24dp.png
│ │ │ │ ├── ic_settings_grey600_24dp.png
│ │ │ │ ├── ic_settings_white_24dp.png
│ │ │ │ ├── ic_share_grey600_24dp.png
│ │ │ │ ├── ic_sort_ascending_grey600_24dp.png
│ │ │ │ ├── ic_sort_ascending_white_24dp.png
│ │ │ │ ├── ic_sort_descending_grey600_24dp.png
│ │ │ │ ├── ic_sort_descending_white_24dp.png
│ │ │ │ ├── ic_sort_grey600_24dp.png
│ │ │ │ ├── ic_sort_white_24dp.png
│ │ │ │ ├── ic_swap_horiz_grey600_24dp.png
│ │ │ │ ├── ic_swap_vert_grey600_24dp.png
│ │ │ │ ├── ic_touch_app_white_24dp.png
│ │ │ │ ├── ic_undo_white_24dp.png
│ │ │ │ ├── ic_verified_user_grey600_24dp.png
│ │ │ │ ├── ic_view_agenda_grey600_24dp.png
│ │ │ │ ├── ic_view_agenda_white_24dp.png
│ │ │ │ ├── ic_view_carousel_grey600_24dp.png
│ │ │ │ ├── ic_view_column_grey600_24dp.png
│ │ │ │ ├── ic_view_grid_grey600_24dp.png
│ │ │ │ ├── ic_view_grid_white_24dp.png
│ │ │ │ ├── ic_view_headline_grey600_24dp.png
│ │ │ │ ├── ic_xml_grey600_48dp.png
│ │ │ │ ├── logo_splash_192.png
│ │ │ │ └── logo_text_192.png
│ │ │ ├── layout
│ │ │ │ ├── action_view_switch.xml
│ │ │ │ ├── activity_main_content.xml
│ │ │ │ ├── activity_main.xml
│ │ │ │ ├── activity_view_pager.xml
│ │ │ │ ├── bottom_sheet_headers_sections.xml
│ │ │ │ ├── bottom_sheet_item_decoration.xml
│ │ │ │ ├── dialog_edit_item.xml
│ │ │ │ ├── dialog_message.xml
│ │ │ │ ├── empty_view.xml
│ │ │ │ ├── fast_scroller.xml
│ │ │ │ ├── filter_view.xml
│ │ │ │ ├── fragment_recycler_view_data.xml
│ │ │ │ ├── fragment_recycler_view.xml
│ │ │ │ ├── fragment_view_pager.xml
│ │ │ │ ├── nav_header.xml
│ │ │ │ ├── progress_bar.xml
│ │ │ │ ├── progress_item.xml
│ │ │ │ ├── recycler_animator_expandable_item.xml
│ │ │ │ ├── recycler_animator_sub_item.xml
│ │ │ │ ├── recycler_configuration_item.xml
│ │ │ │ ├── recycler_expandable_header_item.xml
│ │ │ │ ├── recycler_expandable_item.xml
│ │ │ │ ├── recycler_header_item.xml
│ │ │ │ ├── recycler_holder_header.xml
│ │ │ │ ├── recycler_holder_item.xml
│ │ │ │ ├── recycler_instagram_header_item.xml
│ │ │ │ ├── recycler_instagram_item.xml
│ │ │ │ ├── recycler_overall_item.xml
│ │ │ │ ├── recycler_scrollable_expandable_item.xml
│ │ │ │ ├── recycler_scrollable_footer_item.xml
│ │ │ │ ├── recycler_scrollable_header_item.xml
│ │ │ │ ├── recycler_scrollable_layout_item.xml
│ │ │ │ ├── recycler_scrollable_sub_item.xml
│ │ │ │ ├── recycler_scrollable_uls_item.xml
│ │ │ │ ├── recycler_scrollable_usecase_item.xml
│ │ │ │ ├── recycler_simple_item.xml
│ │ │ │ ├── recycler_staggered_header_item.xml
│ │ │ │ ├── recycler_staggered_item.xml
│ │ │ │ ├── recycler_sub_item.xml
│ │ │ │ ├── recycler_vertical_item.xml
│ │ │ │ ├── reference_spinner_item.xml
│ │ │ │ ├── toolbar_titles.xml
│ │ │ │ └── toolbar.xml
│ │ │ ├── menu
│ │ │ │ ├── activity_entry_drawer.xml
│ │ │ │ ├── menu_animators.xml
│ │ │ │ ├── menu_context.xml
│ │ │ │ ├── menu_endless.xml
│ │ │ │ ├── menu_expandable.xml
│ │ │ │ ├── menu_filter.xml
│ │ │ │ ├── menu_holders.xml
│ │ │ │ ├── menu_overall.xml
│ │ │ │ ├── menu_sections.xml
│ │ │ │ ├── menu_selection_modes.xml
│ │ │ │ ├── menu_staggered_context.xml
│ │ │ │ ├── menu_staggered.xml
│ │ │ │ └── menu_view_pager.xml
│ │ │ ├── mipmap-hdpi
│ │ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxxhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ ├── values
│ │ │ │ ├── attrs.xml
│ │ │ │ ├── colors_material.xml
│ │ │ │ ├── color.xml
│ │ │ │ ├── dimens.xml
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
│ │ │ ├── values-land
│ │ │ │ └── dimens.xml
│ │ │ ├── values-v19
│ │ │ │ └── styles.xml
│ │ │ ├── values-v21
│ │ │ │ └── styles.xml
│ │ │ ├── values-w820dp
│ │ │ │ └── dimens.xml
│ │ │ ├── values-w820dp-land
│ │ │ │ └── dimens.xml
│ │ │ └── xml
│ │ │ └── searchable.xml
│ │ └── test
│ │ └── java
│ │ └── eu
│ │ └── davidea
│ │ └── flexibleadapter
│ │ ├── ClearItemsTest.java
│ │ ├── FilterTest.java
│ │ ├── HeadersSectionsTest.java
│ │ ├── ItemComparatorTest.java
│ │ ├── RemoveItemsTest.java
│ │ └── UpdateDataSetTest.java
│ └── version.properties
├── flexible-adapter-databinding
│ ├── build.gradle
│ ├── proguard-rules.pro
│ ├── src
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ └── java
│ │ └── eu
│ │ └── davidea
│ │ └── flexibleadapter
│ │ └── databinding
│ │ ├── BindingAdapters.java
│ │ └── BindingFlexibleAdapter.java
│ └── version.properties
├── flexible-adapter-livedata
│ ├── build.gradle
│ ├── proguard-rules.pro
│ ├── src
│ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ └── java
│ │ │ └── eu
│ │ │ └── davidea
│ │ │ └── flexibleadapter
│ │ │ └── livedata
│ │ │ ├── FlexibleFactory.java
│ │ │ ├── FlexibleItemProvider.java
│ │ │ └── FlexibleViewModel.java
│ │ └── test
│ │ └── java
│ │ └── eu
│ │ └── davidea
│ │ └── flexibleadapter
│ │ └── livedata
│ │ ├── FlexibleFactoryTest.java
│ │ ├── items
│ │ │ ├── FlexibleItem.java
│ │ │ ├── HeaderHolder.java
│ │ │ └── ItemHolder.java
│ │ └── models
│ │ ├── AbstractModel.java
│ │ ├── HeaderModel.java
│ │ └── ItemModel.java
│ └── version.properties
├── flexible-adapter-ui
│ ├── build.gradle
│ ├── proguard-rules.pro
│ ├── src
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ └── java
│ │ └── eu
│ │ └── davidea
│ │ └── flexibleadapter
│ │ ├── common
│ │ │ ├── FlexibleItemAnimator.java
│ │ │ ├── FlexibleItemDecoration.java
│ │ │ ├── SmoothScrollGridLayoutManager.java
│ │ │ ├── SmoothScrollLinearLayoutManager.java
│ │ │ ├── SmoothScrollStaggeredLayoutManager.java
│ │ │ └── TopSnappedSmoothScroller.java
│ │ ├── helpers
│ │ │ ├── ActionModeHelper.java
│ │ │ ├── AnimatorHelper.java
│ │ │ ├── EmptyViewHelper.java
│ │ │ └── UndoHelper.java
│ │ └── utils
│ │ ├── DrawableUtils.java
│ │ └── FlexibleUtils.java
│ └── version.properties
├── gradle
│ └── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradle.properties
├── gradlew
├── gradlew.bat
├── ISSUE_TEMPLATE.md
├── jfrog-artifactory-publish.gradle
├── jfrog-bintray-publish.gradle
├── LICENSE
├── maven-install.gradle
├── maven-publish.gradle
├── README.md
├── screenshots
│ ├── demo20_adapter_animations.png
│ ├── demo20_async_filter.png
│ ├── demo20_drag_linear.png
│ ├── demo20_dynamic_staggered_layout.png
│ ├── demo20_endless.png
│ ├── demo20_expandables.png
│ ├── demo20_instagram.png
│ ├── demo20_overall.png
│ ├── demo20_search_filter.png
│ ├── demo20_search_sections.png
│ ├── demo20_selection_coherence.png
│ ├── demo20_swipe-to-dismiss1.png
│ ├── demo20_swipe-to-dismiss2.png
│ ├── demo20_undo_single_selection.png
│ ├── demo20_view_pager.png
│ ├── demo30_adapter_animations.png
│ ├── demo30_async_filter.png
│ ├── demo30_drag_linear.png
│ ├── demo30_dynamic_staggered_layout.png
│ ├── demo30_endless.png
│ ├── demo30_expandables.png
│ ├── demo30_instagram.png
│ ├── demo30_overall.png
│ ├── demo30_search_filter.png
│ ├── demo30_search_sections.png
│ ├── demo30_selection_coherence.png
│ ├── demo30_swipe-to-dismiss1.png
│ ├── demo30_swipe-to-dismiss2.png
│ ├── demo30_undo_single_selection.png
│ ├── demo30_view_pager.png
│ ├── FlexibleAdapter.bmpr
│ ├── wiki_diagram.png
│ ├── wiki_endless_automatic_no_more_load.png
│ ├── wiki_fastscroller_accent_color.png
│ ├── wiki_fastscroller_bottom.png
│ ├── wiki_fastscroller_custom_text.png
│ ├── wiki_fastscroller_design.png
│ ├── wiki_fastscroller_top.png
│ ├── wiki_filter.png
│ ├── wiki_item_animation.png
│ ├── wiki_item_deco_dividers.png
│ ├── wiki_item_deco_edge.png
│ ├── wiki_item_deco_edge_settings.png
│ ├── wiki_item_deco_no_edge.png
│ ├── wiki_item_deco_no_edge_settings.png
│ ├── wiki_item_delegation.png
│ ├── wiki_layout_grid.png
│ ├── wiki_layout_linear.png
│ ├── wiki_layout_staggered_grid.png
│ ├── wiki_livedata.png
│ ├── wiki_shf.png
│ ├── wiki_sticky_header_1.png
│ ├── wiki_sticky_header_2.png
│ ├── wiki_sticky_header_3.png
│ └── wiki_sticky_header_4.png
└── settings.gradle
104 directories, 661 files
好例子网口号:伸出你的我的手 — 分享!
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论