As iPadOS 18 shows Tab Bar on top (tvOS'esq), can someone please tell me what changes do I need to make to get tab bar shown as a regular one (Pre iPadOS 18 style)?
Tab bar being at the bottom is easily accessible. And, it being on top needs too much of hands movement.
That being on top is is occupying, in a way, more screen real estate.
Any ideas appreciated. Thank you.
Posts under iPadOS tag
192 Posts
Sort by:
Post
Replies
Boosts
Views
Activity
-Environment
iPad:10th、iOS:17.6.1、Printer:EPSON PX-S730
-Question
Is this phenomenon due to iOS specifications?
Restarting the iPad solves the problem, but I don't think it's best practice to restart it every time you reproduce it.
Please let me know if you have a good solution.
-Problem
I am developing a print preview screen using AirPrint's print method.
If you submit a print job using AirPrint on an iPad while the printer is turned off and then cancel it, the print center remains on the app switcher.
After that, when I turned on the printer, I was no longer able to print using AirPrint on my iPad.
When using AirPrint's API "print" and when printing by launching AirPrint from Safari, we have confirmed the same behavior in both cases.
-How to reproduce
Turn off the printer
Print from iPad to printer using AirPrint
Launch the print center from the app switcher, cancel the print job, and set the number of print jobs to 0.
When you start the app switcher, the Print Center app remains.
In step 4, turn on the printer and print from the iPad to the printer using AirPrint.
When you start Print Center from the app switcher, the print job status becomes "Waiting" and the print job is not executed.
-Expected result
When there are no print jobs on the print center, the print center is closed on the app switcher.
You can print from your iPad to the printer using AirPrint, and then print from the printer.
-Actual results
When there are no print jobs on the print center, the print center remains on the app switcher without being closed.
In the above situation, when printing from the iPad to the printer using AirPrint, the printer does not print.
When I start the print center, the print job status is "Waiting" and is queued.
-Code
printInfo.jobName = "Print Job"
printController.printInfo = printInfo
let pdfURL = Bundle.main.url(forResource: "sample", withExtension: "pdf")!
printController.printingItem = pdfURL
let printer = UIPrinter(url: printerUrl)
printController.print(to: printer, completionHandler: { [self] printController, completed, error in
if(error != nil){
print("error").
}else if completed{
print("completed") //this scenario handles completion response
}else{
print("cancel")
}
})
-Link of API used
Apple Developer-AirPrint-print
-Similar inquiries
Apple Developer Forum - Print Center on my iPhone shows a pending document to print and I can't get rid of it
Hello,
i have an error with iCloud that says 'can't communicate with the server'.
Thanks!
I have an iPad app using the new UITabBarController on iPadOS18, which is suffering from a new issue from the new layout. Within my tabs, I have a UISplitViewController, with a 2 column layout. If I load the app, it works ok, but if I put the app in the background, and then bring it to foreground, the navigation bar buttons and title just disappear from the splitView controller’s primary view controller.
Before going to background:
After coming back from background:
I also get the following layout issues posted in the debugger consoler:
Unable to simultaneously satisfy constraints.
Probably at least one of the constraints in the following list is one you don't want.
Try this:
(1) look at each constraint and try to figure out which you don't expect;
(2) find the code that added the unwanted constraint or constraints and fix it.
(
"<NSLayoutConstraint:0x600002106ee0 UILayoutGuide:0x600003b088c0'TitleView(layout=0x103d18d40)'.trailing <= UILayoutGuide:0x600003b08c40'UIViewLayoutMarginsGuide'.trailing (active)>",
"<NSLayoutConstraint:0x600002137520 H:|-(590)-[UILayoutGuide:0x600003b00a80'TabBarGuide(0x103d18810)'](LTR) (active, names: '|':_UINavigationBarContentView:0x103d18810 )>",
"<NSLayoutConstraint:0x600002137610 UILayoutGuide:0x600003b00a80'TabBarGuide(0x103d18810)'.width == 0 (active)>",
"<NSLayoutConstraint:0x6000021414a0 UILayoutGuide:0x600003b088c0'TitleView(layout=0x103d18d40)'.trailing >= UILayoutGuide:0x600003b00a80'TabBarGuide(0x103d18810)'.trailing (active)>",
"<NSLayoutConstraint:0x600002148e10 'UIView-Encapsulated-Layout-Width' _UINavigationBarContentView:0x103d18810.width == 585 (active)>",
"<NSLayoutConstraint:0x600002107570 'UIView-rightMargin-guide-constraint' H:[UILayoutGuide:0x600003b08c40'UIViewLayoutMarginsGuide']-(20)-|(LTR) (active, names: '|':_UINavigationBarContentView:0x103d18810 )>"
)
Will attempt to recover by breaking constraint
<NSLayoutConstraint:0x600002106ee0 UILayoutGuide:0x600003b088c0'TitleView(layout=0x103d18d40)'.trailing <= UILayoutGuide:0x600003b08c40'UIViewLayoutMarginsGuide'.trailing (active)>
Make a symbolic breakpoint at UIViewAlertForUnsatisfiableConstraints to catch this in the debugger.
The methods in the UIConstraintBasedLayoutDebugging category on UIView listed in <UIKitCore/UIView.h> may also be helpful.
I filed a bug report: FB14971801
Is there something I can do avoid this? It'll make my app pretty unusable if the bar button items just disappear every time the user puts the app in the background and then foregrounds the app.
Under iPadOS 18, I would like the main content to remain the same size regardless of whether the tab bar is hidden or visible.
Is there an easy way to do this?
Having below issues with Navigation bar in UISplitViewController Primary View Controller,
Navigation title is not showing with new Elevated Tab bar.
Navigation right bar button is not showing.
Navigation bar height issue with Primary and Secondary View
Working fine in iPad OS 17.
SplitViewController preferred display mode is
preferredDisplayMode = UISplitViewController.DisplayMode.oneBesideSecondary
Tested with Xcode 16.1 Beta and Xcode 16.0 Beta 6
iPad OS 18.1
iPadOS 17.5
If you use the new TabView in conjunction with ".tabViewStyle(.sidebarAdaptable)" and have a NavigationSplitView in the tabs, the result is a very confusing user experience.
When the TabView is displayed as tabs, there are two sidebar buttons.
The left one closes/opens the sidebar of the view of the selected tab.
The sidebar button of the Top-TabView closes/opens the sidebar for customizing the tabbar. However, this sidebar overlays the sidebar of the selected tab.
To be able to use the underlying sidebar again, the user must actively close the TabView sidebar again (turn it into the top tabbar)
Has anyone found ways to improve this behavior, or is this wrong by design?
My expected behavior would be:
If you use the new TabView with ".tabViewStyle(.sidebarAdaptable)" and have a two column NavigationSplitView in a tab, it automatically becomes a three column view when the top tabbar becomes a sidebar.
import SwiftUI
struct ContentView: View {
var body: some View {
TabView {
Tab("Home", systemImage: "house") {
HomeView()
}
Tab("Settings", systemImage: "gearshape") {
Text("Settings")
}
}
.tabViewStyle(.sidebarAdaptable)
}
}
enum TabItem: String, Identifiable, CaseIterable {
case first
case second
case third
var id: String { rawValue }
var content: String { rawValue }
}
struct HomeView: View {
@State var selectedTab: String?
var body: some View {
NavigationSplitView {
List(TabItem.allCases, selection: $selectedTab) { item in
Text(item.content)
}
} detail: {
if let selectedTab {
Text("Detail: \(selectedTab)")
} else {
Text("Select an item")
}
}
}
}
In iOS 18, the tab bar has been moved to the top on iPad. How can I hide this tab bar? Using TabBarController.tabBar.isHidden = true isn't working.
PDFKit PDFPage.characterBounds(at: Int) is returning incorrect coordinates with iOS 18 beta 4 and later / Xcode 16 beta 4.
It worked fine in iOS 17 and earlier (after showing the same issue during the early iOS 17 beta cycle)
It breaks critical functionality that my app relies on.
I have filed feedback (FB14843671).
So far no changes in the latest betas. iOS release date is approaching fast!
Anybody having the same issue? Any workaround available?
I have a UIViewController that presents a UIPrintInteractionController when a user selects the print button on the UI. The problem is starting in iOS 18 (currently using beta 7) when the print controller is presented the UIViewController's viewWillAppear() is being called. This did not happen in earlier iOS releases and is causing unwanted behavior in the app. Is this a bug or will this be the behavior going forward?
Hi,
After installing iPadOS18 Beta3 on my iPad 7th gen, the default camera app no longer detects QR codes.
I tried updating to Beta7, but the issue remained.
Also, third-party apps that use AVCaptureMetadataOutput in AVFoundation Framework to detect QR codes also no longer work.
You can reproduce the issue by running default camera app or the AVFoundation sample code from the Apple developer site on iPad 7th gen (iPadOS18Beta installed).
https://developer.apple.com/documentation/avfoundation/capture_setup/avcambarcode_detecting_barcodes_and_faces
Has anyone else experienced this issue?
I would like to know if this issue occurs on other iPad models as well.
This is similar to the following issue that previously occurred with iPadOS 17.4.
https://support.apple.com/en-lamr/118614
https://developer.apple.com/forums/thread/748092
I'm trying to build a custom designed sidebar for iPad that requires there to be no gray divider to separated the navigation and the detail view.
I'm surprised at how unsuccessful I have been given how simple this is but have still found no luck.
My current code:
struct ContentView: View {
var body: some View {
NavigationSplitView {
VStack {
//code...
}
.background(.white)
.navigationSplitViewColumnWidth(70)
.navigationBarHidden(true)
.edgesIgnoringSafeArea(.vertical)
} detail: {
//code...
}
}
}
I've attempted to add an overlay of a white rectangle to cover the divider but it just goes behind the existing border. I like to think there is a simpler solution anyways.
As a user, I'm using a public library app, like Books, and I'm missing the Look Up option when I select a word.
I think it used to be there, but I'm not finding it either on iOS 17 on my iPhone
Last night I tried recording a Voice Memo for my singing group, but for some reason the microphones were barely picking anything up. (Even with me snapping my fingers around the mics) I tried recording a video and the microphone at first was fine, but then the sound faded out almost till there was nothing. I am running the iPadOS 18.1 beta, so maybe that has something to do with it, but has anyone who is running the beta either on the same iPad or a different model run into the same problem? I tried doing some research to see if pages like 9to5Mac had reported any issues with the mics, but I couldn’t find anything.
Hello everyone,
I am currently developing several Progressive Web Apps (PWAs) and I am wondering if it’s possible to programmatically open an installed PWA on iOS/iPadOS from another app or a link.
My goal is to be able to launch an installed PWA directly from an action in another PWA, a web app, or a native app on iOS. For example, I’d like to know if this can be achieved via a deep link, a custom protocol (web+), or any other mechanism available on these platforms.
Has anyone successfully implemented this feature or found a workaround to programmatically open an installed PWA on iOS/iPadOS?
Thank you very much for your feedback and suggestions!
.As in screenshot
hello. I installed ios 18 beta from the official website, but I had a big problem after the update. The storage began to fill up abruptly with the "system date", 30GB was free, it became 1-3 GB. how to fix it?
Hi all,
We've been given the opportunity to beta test an app at my school and we have been asked to download the Test Flight app to enable it to run. Unfortunately it's not possible to use Test Flight with a managed Apple ID. All our staff and pupils' iPads are signed in with a managed Apple ID.
It's a shame to pass up this opportunity, but I can't see any way around it... does anyone have any alternatives (apart from creating and using a non-managed Apple ID, which isn't feasible).
Thanks in advance,
Jacob
Tab bars on iPadOS 18 have moved to the top of the screen. They now share space with navigation bars.
We have added calls to setTabBarHidden(_:animated:) alongside existing calls to setNavigationBarHidden(_:animated:) in pushed view controller's viewWillAppear(_:) methods to manage the appearance of the tab bar and navigation bar within navigation controllers.
This results in layout issues with the safe area and navigation bar. I've attached screenshots from an example app demonstrating the issue. How can we manage the appearance of both the navigation bar and tab bar so that they share the same space when visible, but are properly hidden and excluded from the safe area when not?
/// The root view controller shows both the navigation bar and tab bar
class ViewController: UIViewController {
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
navigationController?.setNavigationBarHidden(false, animated: animated)
tabBarController?.setTabBarHidden(false, animated: animated)
}
}
/// The second view controller hides both the navigation bar and tab bar
class ViewController2: UIViewController {
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
navigationController?.setNavigationBarHidden(true, animated: animated)
tabBarController?.setTabBarHidden(true, animated: animated)
}
@IBAction func customBackButtonTapped(_ sender: Any) {
navigationController?.popViewController(animated: true)
}
}
/// The third view controller shows the navigation bar but hides the tab bar
class ViewController3: UIViewController {
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
navigationController?.setNavigationBarHidden(false, animated: animated)
tabBarController?.setTabBarHidden(true, animated: animated)
}
}
Just wondering if anyone else is seeing this bug in iOS 18.1.
When browsing to any song that is not previously downloaded and pressing play, it 'thinks' for a second then reverts to 'not playing'. Radio and for you stations work fine - even if those same methods include a song that I'd directly searched for previously and failed to play.
Interestingly, using the new siri - I can ask it to play the exact song and it works - appears just browsing and trying to play a song that I've searched for directly within the app does not work.
All fine on latest MacOS beta, just iOS and iPadOS seem to have a problem.
I've raised a bug within the feedback app, but no one else I've spoke to seems to see the same issue.