Changelog
1.4.1¶
- feat: Added
copyTypemethod to preserve generics in collections, avoiding ambiguity inaddTypefor distinguishing List generics.
1.4.0¶
- refactor: If
modelsis null,mutablereturns an empty collection. - refactor: Removed
isNetworkingRetry. - refactor: Removed deprecated methods.
- upgrade: Upgraded StateLayout to version 1.4.1.
- fix: #200 Dragging the first item would quickly skip the list.
- feat: Added support for repeating animations in the list.
1.3.90¶
- feat: #324 Grid divider spacing now supports item-based spacing.
- refactor: Removed the
setBackground()method fromDefaultDecoration.kt(can be replaced with the background color of therv). - fix: Fixed grid divider spacing issue.
1.3.89¶
- upgrade: Upgraded StateLayout to version 1.3.13.
- sample: Used mock data.
- sample: Added nested list example.
- sample: Added home layout example.
- sample: Avoided duplicate dialog display.
1.3.88¶
- fix: #317 Unable to drag to adjacent positions of an item (when drag state is disabled).
- fix: #305 Assigning new data to the list can restore the expanded state.
- pref: Improved expand/collapse logic.
- sample: #313 Fixed crash when deleting nested groups.
- sample: Fixed something.
1.3.87¶
- fix: #311
notifyItemChangedtriggeringonRefresh. - pref: Optimized
dataBindingto inflate layout only once when using non-layout bindings. - feat: Added
page_upFetchEnabledproperty. - upgrade: Upgraded StateLayout to version 1.3.12.
1.3.86¶
- fix:
PageRefreshLayout.isNetworkingRetrynoop. - feat: #292 Added
refreshEnableWhenEmptyandrefreshEnableWhenErrorproperties to control pull-to-refresh when the default page is empty. - pref: #298
onCreatenow supportsitemViewTypevalues.
1.3.85¶
- feat: #286 Added
getBinding()to retrieve the ViewBinding instance.
1.3.84¶
- fix:
setDifferModeldoesn't support inheritance fromItemExpandgroup collection data. - fix: #281
onPayloaddidn't pass payload data collection.
1.3.83¶
- fix: Refreshing data caused single selection to fail.
- upgrade: Upgraded StateLayout to version 1.3.11 to fix memory leaks in
FadeStateChangedHandler.
1.3.82¶
- fix: #263 Fixed custom swipe view reuse issue with
android:tag="swipe".
1.3.81¶
Fixed issue where removing items with headers during swipe deletion caused index out of bounds error.
1.3.80¶
pref: setRetryIds now uses the most recent showLoading tag when clicking on retry.
1.3.79¶
- fix: Fixed grid divider dynamic
spanSizespacing loss. - feat:
findViewnow supports nullable types. - feat: Added
dividerSpacefunction. - feat: Upgraded StateLayout to version 1.3.8, introducing
isNetworkingRetryto disable loading default page when there is no network. - pref: Added logging for data binding failures.
- refactor: Deprecated
pagefunction and added
1.3.79¶
- fix: Fixed grid divider dynamic
spanSizespacing loss. - feat: Added
findViewmethod that supports nullable types. - feat: Added
dividerSpacefunction. - feat: Upgraded StateLayout to version 1.3.8, introducing
isNetworkingRetryto disable displaying the default loading page when there is no network. - pref: Added logging for data binding failures.
- refactor: Deprecated the
pagefunction and addedpageCreatefunction.
1.3.78¶
- feat: Added
page_rvattribute toPageRefreshLayoutto specify the list. - feat: Added
page_statelayout attribute toPageRefreshLayoutto specify the default page.
1.3.77¶
- feat: Upgraded StateLayout to version 1.3.6.
- feat: The
ACCESS_NETWORK_STATEpermission (to avoid displaying the loading default page without a network) can be safely removed, allowing the library to run with zero permissions.
1.3.76¶
- fix: Fixed inconsistency in item size when grid and spacing directions are the same.
1.3.75¶
- fix: Replaced
showEmptywith "No more loading" message. - fix: Improved index checking when using
addDatainPageRefreshLayoutto avoid invalid state checking.
1.3.74¶
- fix: Fixed calculation error for group depth.
1.3.73¶
- fix: Upgraded StateLayout to version 1.3.5.
1.3.72¶
- refactor: Upgraded StateLayout to version 1.3.4.
- feat: Added
refreshingparameter torefreshfunction.
1.3.71¶
Fixed issue with addModels using index for partial updates.
1.3.70¶
- feat: Added
ItemStableIdto fix list IDs. - feature #186: Added index insertion for
addModels. - Moved
ItemDepthto a new position.
1.3.69¶
Fixed #184: Fixed setCheckableType.
1.3.68¶
- Fixed #182.
- feat: Added singleton
BindingAdapter.modelId. - Increased deprecation level for APIs.
1.3.67¶
- feat: Added
ItemAttached.
1.3.66¶
- upgrade: Upgraded StateLayout to version 1.3.3.
- feat:
showLoadingis only displayed as LOADING when there is network connectivity, without affectingonRefresh.
1.3.64¶
- upgrade: Upgraded StateLayout to version 1.3.1.
- feat: Added
StateChangedHandlerfor custom default page switching. - feat: Added
FadeStateChangedHandlerfor fade-in/fade-out default page transitions. - feat: Added
getBindingOrNullmethod.
1.3.63¶
Fixed #164.
1.3.61¶
Fixed #157.
1.3.60¶
Optional DataBinding dependency.
1.3.58¶
Fixed #141.
1.3.57¶
The hasMore parameter of PageRefreshLayout.showContent now defaults to true, to avoid unexpected disabling of the load more behavior.
1.3.56¶
Fixed crash
during refresh.
1.3.55¶
Resolved issue with incorrect loading more behavior when calling PageRefreshLayout.finishRefresh instead of SmartRefreshLayout.finishRefresh.
1.3.54¶
- Fixed #119.
- Prevented duplicate expansion/collapse of groups.
- Fixed single expansion mode.
1.3.53¶
1.3.52¶
Fixed issue with multiple loading pages being displayed, causing showError to be ineffective.
1.3.51¶
- fix: Fixed incorrect item display when dragging and dropping.
- feat: Added support for specifying
onClick/onFastClick/onLongClickusing ID directly.rv.linear().setup { addType<SimpleModel>(R.layout.item_simple) R.id.tv_simple.onClick { toast("Clicked Text") } }.models = getData()
1.3.50¶
Updated internal dependency on SmartRefreshLayout to the latest version 2.0.5.
api 'io.github.scwang90:refresh-layout-kernel:2.0.5'
api 'io.github.scwang90:refresh-header-material:2.0.5'
api 'io.github.scwang90:refresh-footer-classics:2.0.5'
mavenCentral() version.
For more details, refer to #85.
1.3.40¶
- fix: Fixed issue with pull-to-refresh not working.
- feat: Added examples for grid grouping and drag grouping.
- feat: Optimized list load updates.
- Modified
addModelsandaddDatato maintain the same object inmodels. - Updated example code.
1.3.39¶
Exposed callback interface for comparing data changes.
1.3.38¶
- feat: Added
setDifferModelsfunction for data comparison and refresh. BRV already supports the official comparison refresh solution, but this enhancement optimizes the process. - feat: Added
PageRefreshLayout.refreshingto load the default page only on the first data load and use silent loading for subsequent loads.
1.3.37¶
- fix: Fixed reversed default page issue in UpFetch mode.
- fix: Fixed divider display issue in
reverseLayout. - feat: Added
ItemDepthUtilsto simplify getting the depth of grouped items.
1.3.36¶
- fix: Fixed divider display issue in UpFetch mode.
1.3.35¶
- feat: Added support for polymorphic interfaces in the
addTypefunction for multi-type lists. - fix: Fixed content reversal issue on Activity with UpFetch loading.
1.3.34¶
Fixed issue with duplicate data when expanding nested groups (caused by mutable child lists).
1.3.33¶
- fix: Fixed issue with enabling only load more.
- fix: Improved performance of parent item lookup with
findParentPosition.
1.3.32¶
- feat: Allow overriding of
BindingAdapter. - fix: Fixed incorrect determination of no more pages when loading more.
1.3.31¶
Fixed crash issue with default page in PageRefreshLayout.
1.3.30¶
- Upgraded dependency on SmartRefreshLayout to version
2.0.3. - Upgraded dependency on StateLayout to version
1.2.0. - Added
onContentlistener for default page.
1.3.29¶
Hidden internal function throttleClick.
1.3.28¶
Fixed issue with onFastClick not working.
1.3.27¶
Configurable global interval for click debouncing.
1.3.26¶
- fix: Fixed incorrect parameter in
showLoadingdefault page. - feat: Added
isSampleGroupfunction to determine if two items are in the same group. - feat: Improved performance of parent item lookup.
1.3.24¶
Fixed issue with dynamic dividers when adding data for partial refresh.
1.3.22¶
Deprecated some functions to reduce the need for checking IDs after adding click events.
| Deprecated Function | Replacement |
|---|---|
addFastClickable |
Replaced with onFastClick |
addClickable |
Replaced with onClick |
addLongClickable |
Replaced with onLongClick |
1.3.21¶
Added support for directly calling onClick/onFastClick/onLongClick using ID.
rv.linear().setup {
addType<SimpleModel>(R.layout.item_simple)
R.id.tv_simple.onClick {
toast("Clicked Text")
}
}.models = getData()
1.3.20¶
Fixed issue where singleton default page was not overriding global default page.