Skip to content

Commit

Permalink
fix(android): children views were not recycled (#516)
Browse files Browse the repository at this point in the history
  • Loading branch information
yepMad authored Mar 14, 2022
1 parent c558f98 commit 716b3a5
Show file tree
Hide file tree
Showing 6 changed files with 14 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,10 @@ class FragmentAdapter(fragmentActivity: FragmentActivity) : FragmentStateAdapter

fun getReactChildCount() = childrenViews.size

fun removeAll() {
childrenViews.clear()
}

fun removeReactViewAt(index: Int) {
markDirty()
childrenViews.removeAt(index)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,12 @@ class PagerViewViewManager : ViewGroupManager<ViewPager2>() {
adapter.removeReactViewAt(index)
postNewChanges(parent)
}

override fun removeAllViews(parent: ViewPager2) {
val adapter = parent.adapter as FragmentAdapter
adapter.removeAll();
postNewChanges(parent)
}

override fun needsCustomLayoutForChildren(): Boolean {
return true
Expand Down
2 changes: 1 addition & 1 deletion lib/commonjs/LazyPagerView.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion lib/commonjs/LazyPagerView.js.map

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion lib/module/LazyPagerView.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion lib/module/LazyPagerView.js.map

Large diffs are not rendered by default.

0 comments on commit 716b3a5

Please sign in to comment.