Search results for

column

2,046 results found

Post

Replies

Boosts

Views

Activity

Mac Catalyst: Toolbar still appears below title bar, leaving empty safe area
Hi everyone, I’m testing my Catalyst SwiftUI project on iOS 26 / iPadOS 26 / macOS 26. I started with a NavigationSplitView (triple-column) inside a WindowGroup. On iPad it looks great: the toolbar items merge into the navigation bar, with the three traffic lights. But on Mac Catalyst, the app always reserves a blank safe area below the traffic lights, and places the toolbar on a separate line beneath the title bar. That leaves wasted vertical space I don’t want. What I expect (based on Apple’s WWDC session “Elevate the design of your iPad app”): The toolbar should merge into the title bar with the traffic lights, no separate row. Content should extend into the full height of the window. What I get on Mac Catalyst: Title bar + traffic lights at the top. Then a completely separate toolbar row below it. Safe area inset prevents my content from reaching the top of the window. What I’ve tried: .toolbarRole(.automatic), .editor, .browser → no effect. Hiding the title bar via titlebar?.titleVisibility = .h
1
0
192
2d
Reply to Xcode26 build app with iOS26, UISplitViewController UI issue
Issue still in iOS 26.0.1 Reproduce with the sample app 'DiffableDataSourceSample' from https://developer.apple.com/documentation/uikit/updating-collection-views-using-diffable-data-sources. It runs with UISplitViewController columns populated when compiled for target iOS 18.2. It comes up empty when target is changed to iOS 26. Both builds run on iPad at iOS 26.0.1 My app was patterned on this sample app and is failing to show content in the same way. FB20611981 submitted
Topic: UI Frameworks SubTopic: UIKit Tags:
3d
How to turn off background extension effect in UISplitViewController?
I have a triple-column UISplitViewController setup in tile mode. Each of the 3 columns has a table view controller. Under iPadOS 26, the section headers and row selection in the middle table extends all the way to the left of the screen, behind the primary column. It looks terrible. The documentation for Adopting Liquid Glass makes it sound like you can add this behavior by using UIBackgroundExtensionView. But I get this behavior automatically in a UISplitViewController. How do I turn this off? I created a simpler sample using a double-column split view with two table view controllers. Here's a screenshot of the result: Note how the section headers and the row selection appear all the way to the left edge of the screen. I don't want that effect. How do you turn off this effect in a UISplitViewController? Here is the code used to setup the split view and the app's main window: func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UISc
5
0
162
6d
Reply to How to turn off background extension effect in UISplitViewController?
I just had a chance to test this under iPadOS 26.1 beta 2. Great news - if the primaryBackgroundStyle property of the split view is set to .none then we get back the old style tile layout and none of the content of the other columns appear behind the primary column. Thank you. If the primaryBackgroundStyle is set to .sidebar, the primary column is inset a bit as it has been since iPadOS 26.0 (and that's fine for a sidebar). But there is still some unwanted extension of content from the other columns behind the primary column. It's not nearly as bad as iPadOS 26.0. Running the app I used for the screenshot in the first post of this thread now results in just the background color of the selected row appearing on the far left. The section headers do not extend to the far left any more. Here's how it looks now with primaryBackgroundStyle = .none with iPadOS 26.1 beta 2: Here's how it looks now with primaryBackgroundStyle = .sidebar with iPadOS 26.1 beta 2 (note the row
Topic: UI Frameworks SubTopic: UIKit Tags:
6d
Reply to How To Position Controls With SwiftUI
Hi Ptit-Xav, I placed the controls in the same manner as Claude31 recommended. If there is a better placement methods, please specify I don't know what you mean by placement constraint My view above is what I thought was a logical subview Regarding ZStack, I thought this was used to control depth of controls, such as various picture objects on top of each other. Don't know what you mean by global view, or what an overlay is I have spent about one month attempting to find comprehensive documentation on SwiftUI and its controls and how to place them, but have come up short. Even Rust has better documentation when it comes to the types of controls available (think FLTK or Iced), what they look like, and how to use them. 99% of the designs are a single vertical column. I have several SwiftUI books, and they cover a lot of material, but answering specific questions about how to place controls on a Form, epecially when the design is more complex, is seemingly hard to come by. Sorry for all the questions, b
Topic: UI Frameworks SubTopic: SwiftUI Tags:
2w
Reply to How To Position Controls With SwiftUI
Your layout seems quite unusual in the sense that you put a slider in the middle of nothing. There is seems to have no placement constraint other than obsolete positioning. (may be i am wrong) As show by Claude31 , you should define logical subviews (buttons view, tile view, header view, ...) Then you define how are these subviews arrange in line or column. If you need more complex positionning, you may use a large ZStack and set each subviews to a specific place. Or use en overlay to put the slider in the middle of the global view.
Topic: UI Frameworks SubTopic: SwiftUI Tags:
2w
NSScrollPocket overlay appearing on scroll views in NSSplitViewController on macOS Tahoe
I have an NSSplitViewController with three columns: sidebar full-height content view with NSScrollView/NSTableView detail view. There's no (visible) titlebar and no toolbar. This layout has worked fine for years, but in Tahoe an unwanted overlay (~30-50px high) appears at the top of any column containing a scroll view with table content. Xcode suggests it's an NSScrollPocket. My research suggests it... Only affects columns with NSScrollView Plain NSView columns are unaffected Overlay height varies (~50px or ~30px depending on how I mess with title / toolbar settings) Disabling titlebar/toolbar settings reduces but doesn't eliminate the overlay The overlay obscures content and there doesn't appear to be any API to control its visibility. Is this intended behavior, and if so, is there a way to disable it for applications that don't need this UI element? If it helps visualise the desired result, the app is https://indigostack.app Any guidance would be appreciated!
Topic: UI Frameworks SubTopic: AppKit
5
0
273
2w
Reply to Unable to remove certificate from xcode
I’ve always wondered about those status values, so I did some experimentation today (-: Remember that to sign code you need a code-signing identity. This is a digital identity, that is, the combination of a certificate and a private key that matches the public key in that certificate. For more background on this, see TN3161 Inside Code Signing: Certificates. So, there are four possibilities for the Manage Certificates UI: No row — If the certificate is not known to the Developer website, there’s simply no row for it in the list. Not In Keychain — This means that the certificate is known to the Developer website but there’s no copy of that certificate in your keychain. Missing Private Key — This means that the certificate is known to the Developer website and is available locally, but the associated private key is not in your keychain. Blank status — If the Status column is blank, everything is copacetic; Xcode will offer that code-signing identity as an option to sign code. Note If both the certifica
3w
ScrollView breaks with LazyVGrid and Searchable on iOS 26 (only on older devices)
When using LazyVGrid within a ScrollView with the .searchable modifier, scrolling is impossible on iPhone 15 (I’m assuming other older devices are affected too). This behavior does not occur on iPhone 16 and newer. This also only happens, when the search bar is placed at the top, for example if the ScrollView is within a TabView. Here's a short screen recording of the issue: And this is a minimal example causing the issue: import SwiftUI struct ContentView: View { var body: some View { TabView { Tab(Text, systemImage: gear) { ExampleTab() } } } } struct ExampleTab: View { @State private var searchText: String = var body: some View { NavigationStack { ScrollView { LazyVGrid( columns: [GridItem( .adaptive(minimum: 120) )], spacing: 20 ) { ForEach(1..<100) { index in Text(Test (index)) } } } .searchable(text: self.$searchText) } } }
1
0
66
3w
Reply to RecognizeDocumentsRequest for receipts
Hi, It seems like it expected behavior. From the demo I can assume that it's not for those type of document. Imagine that you have a normal document, where you have a 2 columns of text. You wouldn't want to read it line by line like you want to do with receipts Unfortunately I try to do the same thing, so I have to stay with simple previous iOS OCR solution and trying to connect those in lines by my own (not very good) algorithm.
Topic: Machine Learning & AI SubTopic: General Tags:
3w
Mitigating overlapping text for sticky section headers for a plain List in iOS 26
When preparing SwiftUI code that uses List with .listStyle(.plain) for iOS 26, the by-default sticky section headers combined with the new translucent top-bars often causes unpleasantly overlapping text: Two questions here: Is there a modifier to make section headers non-sticky? This would be helpful for cases where the translucent bar is a good fit and the section titles don't need to be sticky/pinned. I found .listStyle(.grouped) can be an alternative in some cases, but this adds a gray background / additional padding to the section titles. Is there a way to get a blurry material behind the section headers when they are sticking to the top bar? This would be good for cases where the section header is important content-wise (like in the two-column example above or for a data list categorized using sections that should be always visible as a point of reference) I found the scroll edge effects and .scrollEdgeEffectStyle(.hard, for: .top) does the trick for the top bar but doesn't affect attached stick
Topic: UI Frameworks SubTopic: SwiftUI
5
0
158
Sep ’25
Reply to SwiftData Inheritance Query Specialized Model
Nice to know that the original issue goes away in the latest Beta. Regarding the crash triggered by the access to Item.children, if you can provide a runnable code snippet to demo the issue, I'll take another look. You have mentioned a few classes with inheritance, and so I think it is probably worth mentioning that over-using inheritance may impact your app's performance negatively. Concretely, with today's default store (DefaultStore), all the types in an inheritance hierarchy are persisted with one single table in SQLite. If your inheritance hierarchy has many classes, the table (columns and data) can be quite big, which can slow down the performance of fetching and inserting data. That being said, when adopting SwiftData inheritance, you might examine if that is a right use case. This WWDC25 session(starting from around 4:25) covers this topic a bit. You can take a look, if haven't yet. Best, —— Ziqiao Chen  Worldwide Developer Relations.
Aug ’25
NSTableView.reloadData(forRowIndexes:columnIndexes:) causes wrong subview layout when usesAutomaticRowHeights = true
I have a table view where each row has two labels, one left-aligned and one right-aligned. I would like to reload a single row, but doing so causes the right-aligned label to hug the left-aligned label. Before the reload: After the reload: Reloading the whole table view instead, or disabling automatic row height, solves the issue. Can a single row be reloaded without resorting to these two workarounds? I created FB13534100 1.5 years ago but got no response. class ViewController: NSViewController, NSTableViewDataSource, NSTableViewDelegate { override func loadView() { let tableView = NSTableView() tableView.translatesAutoresizingMaskIntoConstraints = false tableView.dataSource = self tableView.delegate = self tableView.usesAutomaticRowHeights = true let column = NSTableColumn() column.width = 400 tableView.addTableColumn(column) let scrollView = NSScrollView(frame: CGRect(x: 0, y: 0, width: 500, height: 500)) scrollView.translatesAutoresizingMaskIntoConstraints = false scrollView.documentView
Topic: UI Frameworks SubTopic: AppKit Tags:
2
0
102
Aug ’25
Reply to DocumentBrowser toolbar behavior in SwiftUI apps
Hi Ziqiao, the problem is that when you want to use SwiftData for an enterprise app, the user needs proper navigation. In such apps, you usually have more than one screen or form. I did some additional tests with your code and replaced the NavigationStack with a NavigationView. The reason is that I need the automatic two-column split for a sidebar menu and a detail view, not just a single view. The NavigationSplitView doesn’t seem to work as expected. Using it as a root view with an embedded TabView was my first attempt, but that didn’t work either. That’s why I tried embedding the NavigationSplitViews inside the TabView. When I replace your NavigationStack with a NavigationView, I get the automatic two-column view on iPad — but with a second navigation view below the DocumentGroup navigation view. This looks bugged. The NavigationSplitView also has issues with the back button and the document title in sheets. I’ll file a feedback report for now as you suggested and try to find a workaround
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Aug ’25
Icon Composer warning "Failed to parse icontool JSON output."
When the Icon Composer file is imported into the project folder, and after building, there is a warning that says: Failed to parse icontool JSON output. Parts of the warnings show this: Entity: line 1: parser error : Start tag expected, '<' not found 211PNG ^ Entity: line 1: parser error : Start tag expected, '<' not found 211PNG ^ Entity: line 1: parser error : Start tag expected, '<' not found 211PNG ^ /* com.apple.actool.notices */ warning: Failed to parse icontool JSON output. Underlying Errors: Description: The data couldn’t be read because it isn’t in the correct format. Failure Reason: The data is not in the correct format. Debug Description: Garbage at end around line 6, column 0. /* com.apple.actool.compilation-results */ I have created the icon with png files in each layer group in icon composer. However the project is able to compile, and running shows the correct icon. What is the issue with this?
4
0
166
Aug ’25