diff --git a/.changeset/lucky-dots-cheat.md b/.changeset/lucky-dots-cheat.md new file mode 100644 index 00000000..dc269f9a --- /dev/null +++ b/.changeset/lucky-dots-cheat.md @@ -0,0 +1,5 @@ +--- +"react-native-bottom-tabs": patch +--- + +fix: propery destroy image loader on Android diff --git a/packages/react-native-bottom-tabs/android/src/main/java/com/rcttabview/RCTTabView.kt b/packages/react-native-bottom-tabs/android/src/main/java/com/rcttabview/RCTTabView.kt index 0bea1c16..38a6c364 100644 --- a/packages/react-native-bottom-tabs/android/src/main/java/com/rcttabview/RCTTabView.kt +++ b/packages/react-native-bottom-tabs/android/src/main/java/com/rcttabview/RCTTabView.kt @@ -384,6 +384,10 @@ class ReactBottomNavigationView(context: Context) : LinearLayout(context) { updateTextAppearance() } + fun onDropViewInstance() { + imageLoader.shutdown() + } + private fun updateTextAppearance() { if (fontSize != null || fontFamily != null || fontWeight != null) { val menuView = bottomNavigation.getChildAt(0) as? ViewGroup ?: return @@ -455,9 +459,4 @@ class ReactBottomNavigationView(context: Context) : LinearLayout(context) { updateItems(items) uiModeConfiguration = newConfig?.uiMode ?: uiModeConfiguration } - - override fun onDetachedFromWindow() { - super.onDetachedFromWindow() - imageLoader.shutdown() - } } diff --git a/packages/react-native-bottom-tabs/android/src/newarch/RCTTabViewManager.kt b/packages/react-native-bottom-tabs/android/src/newarch/RCTTabViewManager.kt index 228e43ea..5d919760 100644 --- a/packages/react-native-bottom-tabs/android/src/newarch/RCTTabViewManager.kt +++ b/packages/react-native-bottom-tabs/android/src/newarch/RCTTabViewManager.kt @@ -43,6 +43,11 @@ class RCTTabViewManager(context: ReactApplicationContext) : } + override fun onDropViewInstance(view: ReactBottomNavigationView) { + super.onDropViewInstance(view) + view.onDropViewInstance() + } + override fun getName(): String { return tabViewImpl.getName() } diff --git a/packages/react-native-bottom-tabs/android/src/oldarch/RCTTabViewManager.kt b/packages/react-native-bottom-tabs/android/src/oldarch/RCTTabViewManager.kt index 6208b8de..1f07658e 100644 --- a/packages/react-native-bottom-tabs/android/src/oldarch/RCTTabViewManager.kt +++ b/packages/react-native-bottom-tabs/android/src/oldarch/RCTTabViewManager.kt @@ -39,6 +39,11 @@ class RCTTabViewManager(context: ReactApplicationContext) : ViewGroupManager