hhru/Nivelir

Using custom container view controllers with DefaultScreenIterator.

Closed this issue ยท 3 comments

iON1k commented

DefaultScreenIterator works with standard controllers (such as UINavigationController, UITabBarController), but it doesn't work with non-native container view controllers (for example some custom bottom sheet controller or custom tab bar controller).

Of course, we can create our own implementation of ScreenIterator, but it doesn't look nice, because it 's almost copy-paste of DefaultScreenIterator. Moreover code is a bit tricky, so it's difficult to understand.

I think it would be a good idea to make DefaultScreenIterator more flexible and easier to extend. In my fork I made that solution.

I can make PR or may be you have your own solution.

iON1k commented

So what do you think about such improvement?

Hi ๐Ÿ‘‹
We are preparing a big update and have already added the task of improving the ScreenIterator to our plan.
Thanks!

Hello @iON1k ๐Ÿ‘‹

We have implemented the approach you suggested with a small renaming:
https://github.com/hhru/Nivelir/blob/main/Sources/Screen/Container/ScreenIterableContainer.swift

Thank you ๐Ÿ™