Back button tap area extends beyond navigation bar - iphone

I have noticed that the navigation bar back button tap area extends about 10 pixels below the bottom of the navigation bar. I have some buttons right below the navigation bar that are hard to tap because of this overlap. Is there any way to fix this?

Related

How To Make Tab Bar Buttons Tappable Outside Tab Bar Bounds

I have a standard UI Tab Bar controller, with the tabs all added using interface builder. I've used the image inset properties to make the large centre button sit on the edge of the tab bar. However, when I tap on the half that's outside the tab bar bounds it doesn't register anything.
I've currently got no code in place for the tab bar, but I'd like to know how I can have a button like this and make it's taps register even when it's outside the tab bar bounds.

Draggable UIView is interacting undesirably with Tab Bar

I have a UIView that I can drag around the screen via UIPanGestureRecognizer. However, when I drag it down to the bottom of the screen, the view automatically starts to squish vertically when it touches the tab bar. If I keep dragging downward, it will eventually be allowed to drag under the tab bar.
I don't want it to interact with the tab bar at all though. It should just slide under it as if it weren't there. The view controller has Extend Edges Under Top Bars and Extend Edges Under Bottom Bars checked.
Why is the view interacting with the tab bar in the first place? And how do I prevent this behavior?
Finally fixed this by unchecking the "Extend Edges Under Bottom Bars" option on the view controller. The view now slides unimpeded under the tab bar.

How to make screen under a menu inactive (greyed out) in flutter?

I have a bottom navigation bar. Clicking one of the items brings a menu up from the the navigation bar. Simultaneously I'd like the the background screen to become inactive. Similar to the behaviour of the modal bottom sheet.

Safe Area increase itself after hide tab bar, but dont decrease if i show tab bar again

i have a view controllers in a tab bar controller with constraints to bottom safe area, but one of them i must hide tab bar i use this
self.tabBarController?.tabBar.isHidden = true
this increase the safe area
But if i need to move to another i show back tab bar
self.tabBarController?.tabBar.isHidden = false
But safe area don't decrease by itself, making view contents behind tab bar
To make it clear i put a red view pinned to bottom safe area, next i go to view and hide tab bar
this is when it come back to this view and show tab bar again, safe area increased below tab bar, that's why red square are more below
It appears to be a bug in iOS. SafeArea doesn't change to account for tabBar, after hiding / showing it.
You can work around it by anchoring your view to superview and adjusting for tabBar manually. For example, if you want to anchor a tableView to a tabBar it would look like this
if let tabBar = tabBarController?.tabBar {
tabBar.isHidden = true
tableViewBottomConstraint.constant = tabBar.frame.height
}

iphone - pushing view controller onto the stack hides bar button items in the nav bar

I have a nav bar with bar button items on the left and right of the title. When I push a new view controller onto the stack, the bar buttons on the left get replaced by a "back" button, and the bar buttons on the right disappear altogether. How can you override this behavior and keep the bar buttons from going away?
The bar buttons are connected to the view controller that is currently shown. So if you want those buttons to appear when another view controller is pushed then you will have to set them up in the same manner as you did for the first one.