Transparent Navigation bar becomes solid colour when scrolling to bottom - ios

I have a tableview controller which has an embedded navigation bar. I managed to make my nav bar transparent. Now I am trying to achieve a solid color nav bar when I scroll towards the bottom of the table view. I am relatively new to iOS development. So please answer accordingly. I have no idea about scroll views either. I am not sure if I need to add a scroll view or not. If I do, where do I add it? Above the tableview or below it?
Here are a few images of what I want to achieve:
Image 1: Transparent nav bar, but bar button items are visible
Image 2: Transparent nav bar becoming white, bar button items' color changing from white to red
Image 3: This is the final image, where nav bar becomes white and bar button items become red.
If we scroll back up to the top, everything goes back to being the way it was at the start.

Related

iOS is it possible to have status bar that is half light and half dark

I have status bar where left part is on dark background and I have there light text content. But right part of status bar background is on the other hand white and I would like to have there black text.
Is it possible to set different colours of status bar content in left and right half. In left I have dark menu and in right I have content on white background.
I found solution but I have Split View Controller and then I can override in preferredStatusBarStyle differently in Master and Detail view controller. In general I think it will not be possible while having single view controller

How to animate a navigation bar large title while resizing bar?

I have a UITableViewController embeded in a UINavigationController, with the property navigationBar.prefersLargeTitles set to true. As it would react normally, when you scroll the tableView, the navigation bar will shrink in size, and with it, the large title will get pushed behind the rest of the navigation bar, and a new small title will appear. What I want to do is to change this animation, to make the large title move to the center of the shrunk navigation bar and shrink in size. How could I do that?

Modal UIViewController from middle of the screen

I have a transparent custom navigation bar like the one on this picture:
I would like to have a modal view that appears from just under the navigation bar up to half of the screen and make it feels like the navigation bar is expending until half of the screen. And I would like to animate it like if it is sliding down. It will just contain a UILabel, and it will appear when I click on the "i" information button on the top right corner.
I don't know how to make a translucent modal view appears from the middle of the screen instead of from a border. Especially since my navigation bar is transparent and my modal view should not appears behind it while appearing. Do you have any example or tutorial to help me do that?
I am coding in Swift :)

Tab bar border showing up under nav bar

I have a tab bar that I am placing under a Nav Bar. I notice no border when there is a gap between the views, however when I place them right next to each other, a border line appears.
I'm trying to get rid of that border

Opaque navigation bar has black view behind it

I'm manually hiding the navigation bar based on the scroll offset of the scrollview and it works 100% fine with a translucent navbar. However, if it's opaque (I need it to be to get the background colour correct), it produces this black bar which I can't seem to get to go away.

Resources