Why UITabBar item do not respond on single tap with iOS 11? - ios

I have an app available on app store since iOS 9 and it was working fine but with iOS 11 tab bar items(highlighted in image) are not behaving as per expectation, on tab respective action is not firing it fires when we do swipe action on tabbar.
All the properties are just same as previous(properties shown in image 2)

You may have to position your bottom toolbar against the Safe Area if you are planning on supporting iPhoneX, as the bottom part of the screen has a drag bar that replaces the home button and may interfere with the touches on the toolbar.
You can read more about it at Positioning Content Relative to the Safe Area | Apple Developer Documentation

Related

iOS 10 vs iOS 11 safe area

I have an iPad app written in objective-c that has a tool bar at the bottom of a UIVew.
In ios10, the bar sits at the absolute bottom of the screen, and I then place images, streams, etc above that bar and extending to just above the bar.
In ios11, the bar appears to be about 20px ABOVE the absolute bottom, and therefore, my images encroach upon the top of the bar.
I believe this is the "safe area" that was introduced in ios11.
Is there any way I can account for this and have the same functionality in both ios10 AND ios11/12?
edit: in the attached image, the left simulator is ios12, and the right simulator is ios10.
You can see there is black under the ios12 bar, and the image cuts down into the toolbar. In the right simulator, that is not the case. No mods to the code...
Yes you can achieve this by directly setting bottom constraint 0 to superview instead of bottom constraint to safe area layout. If you are using older version of Xcode ans iOS, then it will be Bottom Layout Guide instead of Bottom Safe Area
In above image you can see space at bottom.
Here it is, what you want. But now I suggest to check once. If you are using Xcode 10 and above, then please enable device bezels and chk what happened.
Now you can see in above image, all messed up. So It is better if you redesign layout and make circle little small, so circle image won't be cut behind toolbar. And if you need to change anything in future then you just need little changes.

UIPopoverController with navigation bar inconsistent on device and simulator

I have a simple popover for a UINavigationController that is anchored on the root views right bar button item. On the iPhone simulator (I tried it on various devices) the navigation bar of the popover aligns nicely with the navigation bar of the root view. I assume this is taken care of by UIKit. Here is a screenshot of the simulator.
However on my physical device there is a slight offset. This is a screenshot on my iPhone 6 physical device. It's weird because there's no offset for the iPhone 6 simulation. Notice they bottoms of the navigation bars are not aligned.
I couldn't find any stack overflow questions addressing this and I'm not sure how to fix it since all we're "supposed" to do is specify the popover anchor (as the plus button) and let UIKit take care of the rest. Is there any way to fix this programmatically? I'm not using storyboards or xibs. I also have touch assist enabled on my physical device.

iPhone X specific UI API design changes required to be 100% compatible

With the new iPhone X coming, are there any UI or UI Api changes required to fully support the iPhone X?
Are there any API changes that might affect the UIStatusBarStyle / UINavigationBar / UINavigationItem / UITabBar etc.
The only significant change I see is the larger display of 145pt longer.
The only information I could find is the Apple: Human Interface Guidelines
located here:
https://developer.apple.com/ios/human-interface-guidelines/overview/iphone-x/
For native IOS app the support is already given and all the info is available on full screen(18:9). Lots of app instead still need to fully support the new format so info available on 16:9 ratio
In order to get full-screen applications you will need to recompile your apps with IOS 11 / Xcode 9.
If you use Standard UI controls you should be safe. If you use Autolayout you can utilise the new "safeAreaLayoutGuide" which will then basically help your ui design to respect the iPhoneX view port.
I found this Transcript from Apple located here: https://developer.apple.com/videos/play/fall2017-801/?time=126
"On iPhone X, people access the app switcher (indicated by the red arrow) and the Home screen by swiping up anywhere along the bottom edge of the display. An indicator at the bottom of the screen offers a hint about this interaction.
This indicator is displayed over your app's interface. You'll need to account for this when designing your app. If your app uses UIKit controls and auto-layout, designing and developing for iPhone X and our other devices should be straightforward. Standard UIKit elements such as navigation bars, tables, and collection views, automatically adjust when viewed on iPhone X. Navigation bars, tab bars, and toolbars are positioned and scaled appropriately on all iOS devices. The navigation bar's background material is extended to the display's top edge, and the background material of the tab bar and toolbar is extended to the bottom, while the elements they contain are positioned to prevent underlapping or clipping by other elements."
Basically if you use standard UIKit you have nothing to worry about.
Although Apple recommends: "Make sure that your UI displays correctly and no elements are mispositioned, overlapping, incorrectly scaled, or clipped"
If you discover issues, use the safe area guides and layout margins to correctly position UI elements.

iOS App is offset from the top of the Screen

I am developing an app (objective c) with a navigation controller. For some reason the whole app is offset from the top of the device. See below, can anyone give me some pointers as I have no idea.
Hiding the Navigation bar makes no difference, either in the storyboard or in code. The storyboard constraints all seem correct, as the title below the navigation bar moves up and down when showing and hiding the navigation bar.
This problem occurs on iPhone SE and iPhone 7, the iPad 2 is ok. The xCode version is 8.1
Any help would be appreciated.
You need to use launch.storyboard in your Project or you need to add launch screens image in your Asset Folder for all the sizes, then this black screen from top and bottom will be removed.
In App Icons and Launch Images setting, you need to set asset and launch screen file. so this black bar will disappear.

Back button appears with button outline

I am working on an app which supports iOS 6 to latest iOS versions. When I run the app in Xcode 5 and select target as iOS7; Sometimes the back button in navigation bar appears with the iOS6 button style as an outline around it in iOS7. I wanted to enable default feature of iOS7 that back button without outline.
other buttons look fine with iOS7 without outline.
I think you are using images for the button, use default system buttons.
check whether you have used button style as UIBarButtonItemStylePlain

Resources