Explore the various UI frameworks available for building app interfaces. Discuss the use cases for different frameworks, share best practices, and get help with specific framework-related questions.

All subtopics
Posts under UI Frameworks topic

Post

Replies

Boosts

Views

Activity

iOS 26 Beta: UICollectionView estimatedDimension causes layout feedback loop (worked in iOS 18)
Issue Description We're experiencing a new recursive layout crash in UICollectionViewCompositionalLayout on iOS 26 Beta when using estimatedDimension. The same code works perfectly on iOS 18. Environment iOS 18.x: ✅ Works fine iOS 26 Beta: ❌ Crashes with layout feedback loop Crash Details Crash Report Console Log Code Question Is this an intentional change in iOS 26? Are there new best practices for using estimatedDimension in compositional layouts? Temporary Workaround Using absoluteDimension instead of estimatedDimension resolves the crash, but we lose dynamic sizing capabilities.
Topic: UI Frameworks SubTopic: UIKit
0
0
167
Jul ’25
Tipkit for VisionOS (TabView, etc.)
I am trying to create a user flow where I can guide the user how to navigate through my app. I want to add a tip on a TabView that indicates user to navigate to a specific tab. I have seen this work with iOS properly but I am a little lost as VisionOS is not responding the same for .popoverTip etc. Any guidance is appreciated!
0
0
228
Jul ’25
.chartScrollableAxes(.horizontal) prevents chartYAxisLabel from being postioned top right, over Y axis
Adding .chartScrollableAxes(.horizontal) to a chart prevents chartYAxisLabel from being positioned top right, over Y axis. We want the label at top right, over the Y-axis, but with chartScrollableAxes it is always top right relative to the initial chartXVisibleDomain, which puts it in the middle of the chart if chartXVisibleDomain < full x domain. import SwiftUI import Charts struct ContentView: View { @State private var numbers = (0..<100) .map { _ in Double.random(in: 0...100) } @State var visibleDomain : Int = 50 var body: some View { Chart(Array(zip(numbers.indices, numbers)), id: \.1) { index, number in LineMark( x: .value("Index", index), y: .value("Number", number) ) } .chartScrollableAxes(.horizontal) .chartXVisibleDomain(length: visibleDomain) .chartScrollPosition(initialX: 70) .chartYAxisLabel(position: .topTrailing, alignment: .center) { /* We want the label at top right, over the Y-axis, but with chartScrollableAxes it is always top right relative to the initial chartXVisibleDomain, which puts it in the middle of the chart if chartXVisibleDomain < full x domain */ Text("units") .foregroundStyle(.red) .fontWeight(.bold) } .padding() } } #Preview { ContentView() }
1
0
305
Jun ’25
SwiftUI window top left aligned on macOS 26 beta 1
We ran into a bug with our app Bezel (https://getbezel.app). When running on macOS Tahoe, windows would get partially clipped. This is because we have SwiftUI views that are larger than the window size, our SwiftUI views are supposed to be centered, which they are on macOS 13, 14, 15. But on macOS 26 (beta 1), the window contents are top-left aligned. This seems to be a bug, I have submitted FB18201269. This is my code: WindowGroup { ZStack { Color.green ZStack { Color.yellow Text("Hi") } .aspectRatio(1, contentMode: .fill) .border(.red) } } This first screenshot shows the old behavior on macOS 15: This second screenshot shows the new behavior on macOS 26 (beta 1) Can anyone confirm if this is indeed a bug, or if this an intended change in behavior?
1
0
126
Jun ’25
toolbarForegroundStyle has no effect on navigation title
On Apple Watch, I have used toolbarForegroundStyle view modifier to change the color of the navigation title programmatically to offer theming support for users. In watchOS 26 it no longer seem to have any effect. For example with .toolbarForegroundStyle(.blue, for: .navigationBar) the title color still uses the AccentColor from the Assets catalog. Is there any other setup required to get this working, or is it a bug? Filed a feedback FB18527395
2
0
169
Jul ’25
Is it possible to auto-expand the iOS 26 text selection menu?
I've got a UIKit app that displays a lot of text, and we've completely turned off the system text selection menu and we show our own custom thing instead, to increase discoverability of our text selection actions. But now that iOS 26 can show the full menu even on iPhone, we're looking at switching back to the system menu. It still shows a smaller horizontal-layout menu at first, and then you tap the > symbol to expand to the full menu. Is it possible to jump straight to the full menu, and skip the smaller horizontal one entirely?
Topic: UI Frameworks SubTopic: UIKit Tags:
0
0
170
Jun ’25
UI not updating during render
I've coded a small raytracer that renders a scene (based on Peter Shirley's tutorial, I just coded it in Swift). The raytracer itself works fine, outputs a PPM file which is correct. However, I was hoping to enclose this in a UI that will update the picture as each pixel value gets updated during the render. So to that end I made a MacOS app, with a basic model-view architecture. Here is my model: // // RGBViewModel.swift // rtweekend_gui // // import SwiftUI // RGB structure to hold color values struct RGB { var r: UInt8 var g: UInt8 var b: UInt8 } // ViewModel to handle the RGB array and updates class RGBViewModel: ObservableObject { // Define the dimensions of your 2D array let width = 1200 let height = 675 // Published property to trigger UI updates @Published var rgbArray: [[RGB]] init() { // Initialize with black pixels rgbArray = Array(repeating: Array(repeating: RGB(r: 0, g: 0, b: 0), count: width), count: height) } func render_scene() { for j in 0..&lt;height { for i in 0..&lt;width { // Generate a random color let r = UInt8.random(in: 0...255) let g = UInt8.random(in: 0...255) let b = UInt8.random(in: 0...255) // Update on the main thread since this affects the UI DispatchQueue.main.async { // Update the array self.rgbArray[j][i] = RGB(r: r, g: g, b: b) } } } } and here is my view: // // RGBArrayView.swift // rtweekend_gui // // import SwiftUI struct RGBArrayView: View { // The 2D array of RGB values @StateObject private var viewModel = RGBViewModel() // Control the size of each pixel private let pixelSize: CGFloat = 1 var body: some View { VStack { // Display the RGB array Canvas { context, size in for y in 0..&lt;viewModel.rgbArray.count { for x in 0..&lt;viewModel.rgbArray[y].count { let rgb = viewModel.rgbArray[y][x] let rect = CGRect( x: CGFloat(x) * pixelSize, y: CGFloat(y) * pixelSize, width: pixelSize, height: pixelSize ) context.fill( Path(rect), with: .color(Color( red: Double(rgb.r) / 255.0, green: Double(rgb.g) / 255.0, blue: Double(rgb.b) / 255.0 )) ) } } } .border(Color.gray) // Button to start filling the array Button("Render") { viewModel.render_scene() } .padding() } .padding() .frame(width: CGFloat(viewModel.width) * pixelSize + 40, height: CGFloat(viewModel.height) * pixelSize + 80) } } // Preview for SwiftUI struct RGBArrayView_Previews: PreviewProvider { static var previews: some View { RGBArrayView() } } The render does work and the image displays, however, I thought I set it up to show the image updating pixel by pixel and that doesn't happen, the image shows up all at once. What am I doing wrong?
0
0
112
May ’25
URL in scene openURLContexts does not exist
I'm trying to update an old iOS app to use the UIScene architecture, and I've run into a problem I'm hoping somebody can help me fix. When I try to share a file with my app by AirDrop from another device, the URL that I'm getting from the urlContexts argument does not exist on the device. Here's the code I'm using in my SceneDelegate class to get things going: func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>) { guard let url = URLContexts.first?.url else { os_log("URL in %@ is nil", #function) return } // check that it's the proper file type guard url.pathExtension == fileExtension.replacingOccurrences(of: ".", with: "") else { return } ... } When I set a breakpoint after populating the url property, checking its existence in the Xcode Console reveals the enclosing folder does not exist: (lldb) po url.path /private/var/mobile/Library/Mobile Documents/com~apple~CloudDocs/Downloads/Seattle Times 2025-04-30 10.dbsud (lldb) po FileManager.default.fileExists(atPath: URL(filePath: "/private/var/mobile/Library/Mobile Documents").path) true (lldb) po FileManager.default.fileExists(atPath: URL(filePath: "/private/var/mobile/Library/Mobile Documents/com-apple-CloudDocs/Downloads").path) false (lldb) po FileManager.default.fileExists(atPath: URL(filePath: "/private/var/mobile/Library/Mobile Documents/com-apple-CloudDocs/").path) false So when I try to process the file at the provided URL, it fails of course. Any ideas on how I can fix this? This is happening while running the code on an iPad with iOS 18.5 from Xcode 16.4. If it makes a difference, the AirDrop is originated from an iPhone 16 Pro also running iOS 18.5.
Topic: UI Frameworks SubTopic: UIKit Tags:
2
0
147
Jul ’25
Face ID authentication via LAContext may not always result in App lifecycle notifications
When a user swipes up to see the app switcher, I put a blocking view over my app so the data inside cannot be seen if you flick through the app switcher. I do this by receive notifications(UIApplicationDidBecomeActiveNotification, UIApplicationWillResignActiveNotification) But on my iPhone 16 Pro, iOS 18.4.1 test device, Face ID authentication via LAContext may not always result in App lifecycle notifications.This caused my blocking view not to be removed. any ideas about the notification changes caused by Biometric authentication?
3
0
208
Jun ’25
Open file directly into editor view with DocumentGroup
This was also raised in FB17028569 I have iOS document based app using DocumentGroup. I can create and save documents as expected. All that functionality is fine. @main struct FooBarApp: App { var body: some Scene { DocumentGroup(newDocument: { FoobarDocument() }) { config in MainView(document: config.document) } The problem is when I open an app document from Files.app or Messages the document is never opened directly into the editor, the document browser interface is always presented and the user must manually select the document to open an editor. This also happens when I use UIApplication.shared.requestSceneSessionActivation(nil, userActivity: activity, options: nil) to open a new scene. The doc isn't opened into my editor. I believe my plist document types are setup correctly and that my ReferenceFileDocument is setup correctly <key>CFBundleDocumentTypes</key> <array> <dict> <key>CFBundleTypeExtensions</key> <array> <string>foobar</string> </array> <key>CFBundleTypeIconFile</key> <string>icon-128</string> <key>CFBundleTypeIconSystemGenerated</key> <integer>1</integer> <key>CFBundleTypeMIMETypes</key> <array> <string>application/json</string> </array> <key>CFBundleTypeName</key> <string>Foobar Project</string> <key>LSHandlerRank</key> <string>Owner</string> <key>LSItemContentTypes</key> <array> <string>com.digital-dirtbag.foobar</string> </array> <key>NSUbiquitousDocumentUserActivityType</key> <string>$(PRODUCT_BUNDLE_IDENTIFIER).ubiquitousdoc</string> </dict> </array> <key>UTExportedTypeDeclarations</key> <array> <dict> <key>UTTypeConformsTo</key> <array> <string>public.data</string> </array> <key>UTTypeDescription</key> <string>Foobar Project</string> <key>UTTypeIconFiles</key> <array> <string>icon-128.png</string> </array> <key>UTTypeIdentifier</key> <string>com.digital-dirtbag.foobar</string> <key>UTTypeTagSpecification</key> <dict> <key>public.filename-extension</key> <array> <string>foobar</string> </array> </dict> </dict> The question is does DocumentGroup on iOS even support opening documents directly into the editor view? I know it works on macOS as expected as I tried this with the demo code and it exhibits the same symptoms. Opening a document from iOS Files.app only gets you as far as the document browser while macOS will open an editor directly.
Topic: UI Frameworks SubTopic: SwiftUI
0
0
90
May ’25
PKPass Framework
I am trying to work with the data inside the barcode string in shared PKPass. The documentation shows that is should look for @property (nonatomic, readonly, nullable) PKBarcode *primaryBarcode; I have tried to use it like this guard let code = pass.primaryBarcode?.message else { return } I get a constant message that PKPass has no member primaryBarcode The PKPass.h file in my IOS SDK does not seem to include the @property primaryBarcode or @property barcode. I am running Xcode 16.4 (16F6) and my app target is 17.6 + Is there a restriction on this property? I cannot find an SDK later than mine - the App Store does not offer one. I am unsure of this is a public or private issue - does anyone know? Thanks for reading this. Max
Topic: UI Frameworks SubTopic: SwiftUI
0
0
102
Jun ’25
How can I have a view cover the status bar?
I've been researching everywhere I can, and I have found nothing. I am trying to find a way so that my alert that occurs within my app can drop down but cover the status bar elements (wifi, time, etc). I'm at a loss and was curious if anyone knew how.
Topic: UI Frameworks SubTopic: SwiftUI
1
0
126
Jun ’25
Exceptions thrown with NSTextView and spell checker
I use NSTextView in my app, and I am getting a LOT of crashes when I’m running the app with the debugger attached, and it all points to this spell checker in NSTextView. The crash happens as soon as the textview shows the ‘word completion’ option. If I turn off the “Continuous Spell Checking” option, it works fine, and it doesn’t crash. The exception reason given is: __NSCFString * "NSMutableRLEArray objectAtIndex:effectiveRange:: Out of bounds" This is what the stack trace looks like in Xcode: Thread 1 Queue : com.apple.main-thread (serial) #0 0x000000018335eb38 in objc_exception_throw () #1 0x0000000184e01910 in -[NSRLEArray objectAtIndex:effectiveRange:] () #2 0x0000000184e519a8 in -[NSMutableAttributedString addAttribute:value:range:] () #3 0x000000018818086c in -[NSText(NSTextAccessibilityPrivate) accessibilityAXAttributedStringForCharacterRange:parent:] () #4 0x0000000187f576b0 in -[NSAccessibilityAttributeAccessorInfo getParameterizedAttributeValue:forObject:withParameter:] () #5 0x0000000187f591a8 in ___NSAccessibilityEntryPointValueForAttributeWithParameter_block_invoke.799 () #6 0x0000000187f5458c in NSAccessibilityPerformEntryPointObject () #7 0x0000000187f56190 in NSAccessibilityEntryPointValueForAttributeWithParameter () #8 0x0000000187cb6a3c in CopyParameterizedAttributeValue () #9 0x00000002327057ac in ___lldb_unnamed_symbol4511 () #10 0x0000000232705854 in ___lldb_unnamed_symbol4512 () #11 0x000000018a5b3670 in _AXXMIGCopyParameterizedAttributeValue () #12 0x000000018a5d4894 in _XCopyParameterizedAttributeValue () #13 0x000000018a592ff8 in mshMIGPerform () #14 0x000000018382a250 in __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ () #15 0x000000018382a178 in __CFRunLoopDoSource1 () #16 0x0000000183828b78 in __CFRunLoopRun () #17 0x0000000183827c58 in CFRunLoopRunSpecific () #18 0x000000018f2bc27c in RunCurrentEventLoopInMode () #19 0x000000018f2bf4e8 in ReceiveNextEventCommon () #20 0x000000018f44a484 in _BlockUntilNextEventMatchingListInModeWithFilter () #21 0x000000018774fab4 in _DPSNextEvent () #22 0x00000001880ee5b0 in -[NSApplication(NSEventRouting) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] () #23 0x00000001884b836c in -[NSCorrectionPanel _interceptEvents] () #24 0x00000001884b8f30 in -[NSCorrectionPanel showPanelAtRect:inView:primaryString:alternativeStrings:forType:completionHandler:] () #25 0x00000001880c91ec in -[NSSpellChecker showCorrectionIndicatorOfType:range:primaryString:alternativeStrings:forStringInRect:view:completionHandler:] () #26 0x00000001880ca0c0 in -[NSSpellChecker _showInlinePredictionForReplacingRange:markedRange:string:withString:view:client:lastReplacementRange:completeWordIndexes:resultDictionary:completionHandler:] () #27 0x00000001880cb26c in -[NSSpellChecker showCompletionForCandidate:selectedRange:offset:inString:rect:view:client:completionHandler:] () #28 0x0000000188303a94 in -[NSTextCheckingController handleCompletionFromCandidates:forSelectedRange:offset:inAnnotatedString:rect:view:] () #29 0x00000001882f9054 in -[NSTextCheckingController viewForRange:completionHandler:] () #30 0x00000001883041c8 in __60-[NSTextCheckingController handleCandidates:sequenceNumber:]_block_invoke () #31 0x000000018789105c in -[NSTextCheckingController annotatedSubstringForProposedRange:wrap:completionHandler:failureHandler:] () #32 0x0000000187890da4 in -[NSTextCheckingController annotatedSubstringForProposedRange:completionHandler:] () #33 0x00000001878927d4 in -[NSTextCheckingController annotatedSubstringForSelectedRangeWithCompletionHandler:] () #34 0x0000000188304134 in -[NSTextCheckingController handleCandidates:sequenceNumber:] () #35 0x00000001883067e0 in ___NSRunLoopTimerCreateWithHandler_block_invoke () #36 0x0000000183842e14 in __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ () #37 0x0000000183842ad4 in __CFRunLoopDoTimer () #38 0x0000000183842610 in __CFRunLoopDoTimers () #39 0x0000000183828a18 in __CFRunLoopRun () #40 0x0000000183827c58 in CFRunLoopRunSpecific () #41 0x000000018f2bc27c in RunCurrentEventLoopInMode () #42 0x000000018f2bf4e8 in ReceiveNextEventCommon () #43 0x000000018f44a484 in _BlockUntilNextEventMatchingListInModeWithFilter () #44 0x000000018774fab4 in _DPSNextEvent () #45 0x00000001880ee5b0 in -[NSApplication(NSEventRouting) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] () #46 0x0000000187742c64 in -[NSApplication run] () #47 0x000000018771935c in NSApplicationMain () If I run the debug version of the app without the debugger, it works fine as well. In fact, if I run the app without "All Objective-C Exceptions" breakpoint, it also works fine. So it seems like some framework issue, which is making it hard to run and test my app. What’s the reason for this, and is this an issue I should be worried about for when the app is available to my users?
Topic: UI Frameworks SubTopic: AppKit Tags:
3
0
123
Jun ’25
What is causing the Freeze in this SwiftUI View?
I made a small project that freezes after the following steps: Run the app Turn on VoiceOver Tap on "Header" once so it is read out loud Turn off VoiceOver Scroll up and down really quickly Using the Time Profiler, the items in the Main Thread followed by significant drops are: 19.11 s 85.1% 0 s closure #2 in closure #1 in ViewRendererHost.render(interval:updateDisplayList:targetTimestamp:) 13.05 s 58.1% 4.00 ms ViewGraph.updateOutputs(async:) 7.97 s 35.5% 83.00 ms AG::Graph::UpdateStack::update() 5.76 s 25.6% 19.00 ms LayoutScrollableTransform.updateValue() 1.73 s  7.7% 2.00 ms specialized NativeDictionary.setValue(:forKey:isUnique:) 579.00 ms  2.6% 58.00 ms 0x100a8c908 311.00 ms  1.4% 165.00 ms __thread_stack_pcs I see the memory usage increase by about 0.6 MB per second while frozen. And there are a few things that prevent the freeze: Changing LazyVStack for VStack Removing the VStack from the Section Removing the header: parameter from the Section Reducing the range of the ForEach Move the Text(verbatim: "Text at same level as ForEach containing Section") outside of the LazyVStack However, these are all things I need to keep for my actual app. So what is causing this hang? Am I using SwiftUI in any way it's not intended to be used? import SwiftUI struct ContentView: View { var body: some View { VStack { VStack(alignment: .leading) { Image(systemName: "pencil.circle.fill") Text("Title") Text("Label") } ScrollView { LazyVStack { Section { VStack { ForEach(0..<70) { _ in Text(verbatim: "A") } } } header: { Text(verbatim: "Header") } Text(verbatim: "Text at same level as ForEach containing Section") } } } } } AppDelegate: @main class AppDelegate: UIResponder, UIApplicationDelegate { var window: UIWindow? func application( _ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? ) -> Bool { let window = UIWindow(frame: UIScreen.main.bounds) window.rootViewController = UINavigationController(rootViewController: MainViewController()) window.makeKeyAndVisible() self.window = window return true } } MainViewController: import UIKit import SwiftUI final class MainViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() let swiftUIView = ContentView() let hostingController = UIHostingController(rootView: swiftUIView) addChild(hostingController) hostingController.view.translatesAutoresizingMaskIntoConstraints = false view.addSubview(hostingController.view) NSLayoutConstraint.activate([ hostingController.view.topAnchor.constraint(equalTo: view.topAnchor), hostingController.view.bottomAnchor.constraint(equalTo: view.bottomAnchor), hostingController.view.leadingAnchor.constraint(equalTo: view.leadingAnchor), hostingController.view.trailingAnchor.constraint(equalTo: view.trailingAnchor) ]) hostingController.didMove(toParent: self) view.backgroundColor = .white } }
1
0
247
Jun ’25
Application crashes when using TextEditor(text, selection)
I have a TextEditor, to the constructor of which in addition to the text I pass an object of the TextSelection? type. I check on the Simulator with iOS 18.2. An attempt to clear the text leads to a crash with the message "Thread 1: Fatal error: String index is out of bounds" in Xcode. More about the error: libswiftCore.dylib`_swift_runtime_on_report: -> 0x194f32024 <+0>: ret More about the reproduction conditions: struct MyView: View { @Bindable private var viewModel = MyViewModel() @State var myTextSelection: TextSelection? = nil var body: some View { ZStack { // Some other code myEditor // Some other code } .toolbar { ToolbarItem(placement: .primaryAction) { Button { viewModel.clear() } label: { Label("Clear", systemImage: "eraser") } } } } var myEditor: some View { ZStack(alignment: .topLeading) { TextEditor(text: $viewModel.text, selection: $myTextSelection) .disableAutocorrection(true) .autocapitalization(.sentences) } // Some other code } } MyViewModel: @Observable final class MyViewModel: ObservableObject { var text: String = "" func clear() { text = "" } }
1
0
142
May ’25
Sorting of FetchResults in TableView broken in xcode 26
Previously, I sorted my FetchResult in a TableView like this: @FetchRequest( sortDescriptors: [SortDescriptor(\.rechnungsDatum, order: .forward)], predicate: NSPredicate(format: "betragEingang == nil OR betragEingang == 0") ) private var verguetungsantraege: FetchedResults&lt;VerguetungsAntraege&gt; ... body ... Table(of:VerguetungsAntraege.self, sortOrder: $verguetungsantraege.sortDescriptors) { TableColumn("date", value:\.rechnungsDatum) { item in Text(Formatters.dateFormatter.string(from: item.rechnungsDatum ?? Date()) ) } .width(120) TableColumn("rechNrKurz", value:\.rechnungsNummer) { item in Text(item.rechnungsNummer ?? "") } .width(120) TableColumn("betrag", value:\.totalSum ) { Text(Formatters.currencyFormatter.string(from: $0.totalSum as NSNumber) ?? "kein Wert") } .width(120) TableColumn("klient") { Text(db.getKlientNameByUUID(id: $0.klient ?? UUID(), moc: moc)) } } rows: { ForEach(Array(verguetungsantraege)) { antrag in TableRow(antrag) } } There seem to be changes here in Xcode 26. In any case, I always get the error message in each line with TableColumn("title", value: \.sortingField) Ambiguous use of 'init(_:value:content:)' Does anyone have any idea what's changed? Unfortunately, the documentation doesn't provide any information.
0
0
184
Jun ’25
NSDockTilePlugIn and dockMenu selector never returns
I have a class: class MyDockTilePlugin: NSObject, NSDockTilePlugIn { func setDockTile(_ dockTile: NSDockTile?) { return } func dockMenu() -> NSMenu? { let menu = NSMenu() let it = NSMenuItem(title: "choose me!", action: #selector(self.selectDMIP(_:)), keyEquivalent: "") it.target = self menu.addItem(it) return menu } @objc func selectDMIP(_ sender: NSMenuItem) { print("you selected me!") } } and I follow the instructions to put it in a Bundle and copy it into the main app. I run the main app. Change the Dock options to Keep in Dock. Quit the main app. Right-click the Dock icon. I get the menu, but when selected, it never prints "you selected me!" What I do see after selecting the menu item is the plugin class reloading. Any ideas how to capture the menu item selection?
Topic: UI Frameworks SubTopic: AppKit
1
0
109
May ’25
iOS app bottom and top layout not working
Hello. I have a projet due in a few days and there is smth wrong with my code. It has some kind of "border" on top and on the bottom, and it really interferes with my app. At first thought it was a simulator problem so tried on a physical iphone (13pr) and the border was still there. Already tried to use .ignoreSafeArea but still doesnt work. So I came here. Please help me, thanks! Attached below is the screenshot of the "border" This is my code for Contentview ContentView.swift Please help asap, as the project is due i a few days. Thanks!
Topic: UI Frameworks SubTopic: SwiftUI
2
0
130
Jun ’25
iOS 26 Beta: UICollectionView estimatedDimension causes layout feedback loop (worked in iOS 18)
Issue Description We're experiencing a new recursive layout crash in UICollectionViewCompositionalLayout on iOS 26 Beta when using estimatedDimension. The same code works perfectly on iOS 18. Environment iOS 18.x: ✅ Works fine iOS 26 Beta: ❌ Crashes with layout feedback loop Crash Details Crash Report Console Log Code Question Is this an intentional change in iOS 26? Are there new best practices for using estimatedDimension in compositional layouts? Temporary Workaround Using absoluteDimension instead of estimatedDimension resolves the crash, but we lose dynamic sizing capabilities.
Topic: UI Frameworks SubTopic: UIKit
Replies
0
Boosts
0
Views
167
Activity
Jul ’25
Tipkit for VisionOS (TabView, etc.)
I am trying to create a user flow where I can guide the user how to navigate through my app. I want to add a tip on a TabView that indicates user to navigate to a specific tab. I have seen this work with iOS properly but I am a little lost as VisionOS is not responding the same for .popoverTip etc. Any guidance is appreciated!
Replies
0
Boosts
0
Views
228
Activity
Jul ’25
.chartScrollableAxes(.horizontal) prevents chartYAxisLabel from being postioned top right, over Y axis
Adding .chartScrollableAxes(.horizontal) to a chart prevents chartYAxisLabel from being positioned top right, over Y axis. We want the label at top right, over the Y-axis, but with chartScrollableAxes it is always top right relative to the initial chartXVisibleDomain, which puts it in the middle of the chart if chartXVisibleDomain < full x domain. import SwiftUI import Charts struct ContentView: View { @State private var numbers = (0..<100) .map { _ in Double.random(in: 0...100) } @State var visibleDomain : Int = 50 var body: some View { Chart(Array(zip(numbers.indices, numbers)), id: \.1) { index, number in LineMark( x: .value("Index", index), y: .value("Number", number) ) } .chartScrollableAxes(.horizontal) .chartXVisibleDomain(length: visibleDomain) .chartScrollPosition(initialX: 70) .chartYAxisLabel(position: .topTrailing, alignment: .center) { /* We want the label at top right, over the Y-axis, but with chartScrollableAxes it is always top right relative to the initial chartXVisibleDomain, which puts it in the middle of the chart if chartXVisibleDomain < full x domain */ Text("units") .foregroundStyle(.red) .fontWeight(.bold) } .padding() } } #Preview { ContentView() }
Replies
1
Boosts
0
Views
305
Activity
Jun ’25
SwiftUI window top left aligned on macOS 26 beta 1
We ran into a bug with our app Bezel (https://getbezel.app). When running on macOS Tahoe, windows would get partially clipped. This is because we have SwiftUI views that are larger than the window size, our SwiftUI views are supposed to be centered, which they are on macOS 13, 14, 15. But on macOS 26 (beta 1), the window contents are top-left aligned. This seems to be a bug, I have submitted FB18201269. This is my code: WindowGroup { ZStack { Color.green ZStack { Color.yellow Text("Hi") } .aspectRatio(1, contentMode: .fill) .border(.red) } } This first screenshot shows the old behavior on macOS 15: This second screenshot shows the new behavior on macOS 26 (beta 1) Can anyone confirm if this is indeed a bug, or if this an intended change in behavior?
Replies
1
Boosts
0
Views
126
Activity
Jun ’25
toolbarForegroundStyle has no effect on navigation title
On Apple Watch, I have used toolbarForegroundStyle view modifier to change the color of the navigation title programmatically to offer theming support for users. In watchOS 26 it no longer seem to have any effect. For example with .toolbarForegroundStyle(.blue, for: .navigationBar) the title color still uses the AccentColor from the Assets catalog. Is there any other setup required to get this working, or is it a bug? Filed a feedback FB18527395
Replies
2
Boosts
0
Views
169
Activity
Jul ’25
Is it possible to auto-expand the iOS 26 text selection menu?
I've got a UIKit app that displays a lot of text, and we've completely turned off the system text selection menu and we show our own custom thing instead, to increase discoverability of our text selection actions. But now that iOS 26 can show the full menu even on iPhone, we're looking at switching back to the system menu. It still shows a smaller horizontal-layout menu at first, and then you tap the > symbol to expand to the full menu. Is it possible to jump straight to the full menu, and skip the smaller horizontal one entirely?
Topic: UI Frameworks SubTopic: UIKit Tags:
Replies
0
Boosts
0
Views
170
Activity
Jun ’25
UI not updating during render
I've coded a small raytracer that renders a scene (based on Peter Shirley's tutorial, I just coded it in Swift). The raytracer itself works fine, outputs a PPM file which is correct. However, I was hoping to enclose this in a UI that will update the picture as each pixel value gets updated during the render. So to that end I made a MacOS app, with a basic model-view architecture. Here is my model: // // RGBViewModel.swift // rtweekend_gui // // import SwiftUI // RGB structure to hold color values struct RGB { var r: UInt8 var g: UInt8 var b: UInt8 } // ViewModel to handle the RGB array and updates class RGBViewModel: ObservableObject { // Define the dimensions of your 2D array let width = 1200 let height = 675 // Published property to trigger UI updates @Published var rgbArray: [[RGB]] init() { // Initialize with black pixels rgbArray = Array(repeating: Array(repeating: RGB(r: 0, g: 0, b: 0), count: width), count: height) } func render_scene() { for j in 0..&lt;height { for i in 0..&lt;width { // Generate a random color let r = UInt8.random(in: 0...255) let g = UInt8.random(in: 0...255) let b = UInt8.random(in: 0...255) // Update on the main thread since this affects the UI DispatchQueue.main.async { // Update the array self.rgbArray[j][i] = RGB(r: r, g: g, b: b) } } } } and here is my view: // // RGBArrayView.swift // rtweekend_gui // // import SwiftUI struct RGBArrayView: View { // The 2D array of RGB values @StateObject private var viewModel = RGBViewModel() // Control the size of each pixel private let pixelSize: CGFloat = 1 var body: some View { VStack { // Display the RGB array Canvas { context, size in for y in 0..&lt;viewModel.rgbArray.count { for x in 0..&lt;viewModel.rgbArray[y].count { let rgb = viewModel.rgbArray[y][x] let rect = CGRect( x: CGFloat(x) * pixelSize, y: CGFloat(y) * pixelSize, width: pixelSize, height: pixelSize ) context.fill( Path(rect), with: .color(Color( red: Double(rgb.r) / 255.0, green: Double(rgb.g) / 255.0, blue: Double(rgb.b) / 255.0 )) ) } } } .border(Color.gray) // Button to start filling the array Button("Render") { viewModel.render_scene() } .padding() } .padding() .frame(width: CGFloat(viewModel.width) * pixelSize + 40, height: CGFloat(viewModel.height) * pixelSize + 80) } } // Preview for SwiftUI struct RGBArrayView_Previews: PreviewProvider { static var previews: some View { RGBArrayView() } } The render does work and the image displays, however, I thought I set it up to show the image updating pixel by pixel and that doesn't happen, the image shows up all at once. What am I doing wrong?
Replies
0
Boosts
0
Views
112
Activity
May ’25
MKMapView cannot render P3 color in annotations in iOS 26
Hello! Since iOS 26, MKMapView annotations are unable to render P3 color in the marker style. Regular colorscontinue to work fine, but we make extensive use of this annotation style in our app. Filed as FB17910834
Topic: UI Frameworks SubTopic: UIKit Tags:
Replies
1
Boosts
0
Views
114
Activity
Jun ’25
URL in scene openURLContexts does not exist
I'm trying to update an old iOS app to use the UIScene architecture, and I've run into a problem I'm hoping somebody can help me fix. When I try to share a file with my app by AirDrop from another device, the URL that I'm getting from the urlContexts argument does not exist on the device. Here's the code I'm using in my SceneDelegate class to get things going: func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>) { guard let url = URLContexts.first?.url else { os_log("URL in %@ is nil", #function) return } // check that it's the proper file type guard url.pathExtension == fileExtension.replacingOccurrences(of: ".", with: "") else { return } ... } When I set a breakpoint after populating the url property, checking its existence in the Xcode Console reveals the enclosing folder does not exist: (lldb) po url.path /private/var/mobile/Library/Mobile Documents/com~apple~CloudDocs/Downloads/Seattle Times 2025-04-30 10.dbsud (lldb) po FileManager.default.fileExists(atPath: URL(filePath: "/private/var/mobile/Library/Mobile Documents").path) true (lldb) po FileManager.default.fileExists(atPath: URL(filePath: "/private/var/mobile/Library/Mobile Documents/com-apple-CloudDocs/Downloads").path) false (lldb) po FileManager.default.fileExists(atPath: URL(filePath: "/private/var/mobile/Library/Mobile Documents/com-apple-CloudDocs/").path) false So when I try to process the file at the provided URL, it fails of course. Any ideas on how I can fix this? This is happening while running the code on an iPad with iOS 18.5 from Xcode 16.4. If it makes a difference, the AirDrop is originated from an iPhone 16 Pro also running iOS 18.5.
Topic: UI Frameworks SubTopic: UIKit Tags:
Replies
2
Boosts
0
Views
147
Activity
Jul ’25
Face ID authentication via LAContext may not always result in App lifecycle notifications
When a user swipes up to see the app switcher, I put a blocking view over my app so the data inside cannot be seen if you flick through the app switcher. I do this by receive notifications(UIApplicationDidBecomeActiveNotification, UIApplicationWillResignActiveNotification) But on my iPhone 16 Pro, iOS 18.4.1 test device, Face ID authentication via LAContext may not always result in App lifecycle notifications.This caused my blocking view not to be removed. any ideas about the notification changes caused by Biometric authentication?
Replies
3
Boosts
0
Views
208
Activity
Jun ’25
Open file directly into editor view with DocumentGroup
This was also raised in FB17028569 I have iOS document based app using DocumentGroup. I can create and save documents as expected. All that functionality is fine. @main struct FooBarApp: App { var body: some Scene { DocumentGroup(newDocument: { FoobarDocument() }) { config in MainView(document: config.document) } The problem is when I open an app document from Files.app or Messages the document is never opened directly into the editor, the document browser interface is always presented and the user must manually select the document to open an editor. This also happens when I use UIApplication.shared.requestSceneSessionActivation(nil, userActivity: activity, options: nil) to open a new scene. The doc isn't opened into my editor. I believe my plist document types are setup correctly and that my ReferenceFileDocument is setup correctly <key>CFBundleDocumentTypes</key> <array> <dict> <key>CFBundleTypeExtensions</key> <array> <string>foobar</string> </array> <key>CFBundleTypeIconFile</key> <string>icon-128</string> <key>CFBundleTypeIconSystemGenerated</key> <integer>1</integer> <key>CFBundleTypeMIMETypes</key> <array> <string>application/json</string> </array> <key>CFBundleTypeName</key> <string>Foobar Project</string> <key>LSHandlerRank</key> <string>Owner</string> <key>LSItemContentTypes</key> <array> <string>com.digital-dirtbag.foobar</string> </array> <key>NSUbiquitousDocumentUserActivityType</key> <string>$(PRODUCT_BUNDLE_IDENTIFIER).ubiquitousdoc</string> </dict> </array> <key>UTExportedTypeDeclarations</key> <array> <dict> <key>UTTypeConformsTo</key> <array> <string>public.data</string> </array> <key>UTTypeDescription</key> <string>Foobar Project</string> <key>UTTypeIconFiles</key> <array> <string>icon-128.png</string> </array> <key>UTTypeIdentifier</key> <string>com.digital-dirtbag.foobar</string> <key>UTTypeTagSpecification</key> <dict> <key>public.filename-extension</key> <array> <string>foobar</string> </array> </dict> </dict> The question is does DocumentGroup on iOS even support opening documents directly into the editor view? I know it works on macOS as expected as I tried this with the demo code and it exhibits the same symptoms. Opening a document from iOS Files.app only gets you as far as the document browser while macOS will open an editor directly.
Topic: UI Frameworks SubTopic: SwiftUI
Replies
0
Boosts
0
Views
90
Activity
May ’25
PKPass Framework
I am trying to work with the data inside the barcode string in shared PKPass. The documentation shows that is should look for @property (nonatomic, readonly, nullable) PKBarcode *primaryBarcode; I have tried to use it like this guard let code = pass.primaryBarcode?.message else { return } I get a constant message that PKPass has no member primaryBarcode The PKPass.h file in my IOS SDK does not seem to include the @property primaryBarcode or @property barcode. I am running Xcode 16.4 (16F6) and my app target is 17.6 + Is there a restriction on this property? I cannot find an SDK later than mine - the App Store does not offer one. I am unsure of this is a public or private issue - does anyone know? Thanks for reading this. Max
Topic: UI Frameworks SubTopic: SwiftUI
Replies
0
Boosts
0
Views
102
Activity
Jun ’25
How can I have a view cover the status bar?
I've been researching everywhere I can, and I have found nothing. I am trying to find a way so that my alert that occurs within my app can drop down but cover the status bar elements (wifi, time, etc). I'm at a loss and was curious if anyone knew how.
Topic: UI Frameworks SubTopic: SwiftUI
Replies
1
Boosts
0
Views
126
Activity
Jun ’25
Exceptions thrown with NSTextView and spell checker
I use NSTextView in my app, and I am getting a LOT of crashes when I’m running the app with the debugger attached, and it all points to this spell checker in NSTextView. The crash happens as soon as the textview shows the ‘word completion’ option. If I turn off the “Continuous Spell Checking” option, it works fine, and it doesn’t crash. The exception reason given is: __NSCFString * "NSMutableRLEArray objectAtIndex:effectiveRange:: Out of bounds" This is what the stack trace looks like in Xcode: Thread 1 Queue : com.apple.main-thread (serial) #0 0x000000018335eb38 in objc_exception_throw () #1 0x0000000184e01910 in -[NSRLEArray objectAtIndex:effectiveRange:] () #2 0x0000000184e519a8 in -[NSMutableAttributedString addAttribute:value:range:] () #3 0x000000018818086c in -[NSText(NSTextAccessibilityPrivate) accessibilityAXAttributedStringForCharacterRange:parent:] () #4 0x0000000187f576b0 in -[NSAccessibilityAttributeAccessorInfo getParameterizedAttributeValue:forObject:withParameter:] () #5 0x0000000187f591a8 in ___NSAccessibilityEntryPointValueForAttributeWithParameter_block_invoke.799 () #6 0x0000000187f5458c in NSAccessibilityPerformEntryPointObject () #7 0x0000000187f56190 in NSAccessibilityEntryPointValueForAttributeWithParameter () #8 0x0000000187cb6a3c in CopyParameterizedAttributeValue () #9 0x00000002327057ac in ___lldb_unnamed_symbol4511 () #10 0x0000000232705854 in ___lldb_unnamed_symbol4512 () #11 0x000000018a5b3670 in _AXXMIGCopyParameterizedAttributeValue () #12 0x000000018a5d4894 in _XCopyParameterizedAttributeValue () #13 0x000000018a592ff8 in mshMIGPerform () #14 0x000000018382a250 in __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ () #15 0x000000018382a178 in __CFRunLoopDoSource1 () #16 0x0000000183828b78 in __CFRunLoopRun () #17 0x0000000183827c58 in CFRunLoopRunSpecific () #18 0x000000018f2bc27c in RunCurrentEventLoopInMode () #19 0x000000018f2bf4e8 in ReceiveNextEventCommon () #20 0x000000018f44a484 in _BlockUntilNextEventMatchingListInModeWithFilter () #21 0x000000018774fab4 in _DPSNextEvent () #22 0x00000001880ee5b0 in -[NSApplication(NSEventRouting) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] () #23 0x00000001884b836c in -[NSCorrectionPanel _interceptEvents] () #24 0x00000001884b8f30 in -[NSCorrectionPanel showPanelAtRect:inView:primaryString:alternativeStrings:forType:completionHandler:] () #25 0x00000001880c91ec in -[NSSpellChecker showCorrectionIndicatorOfType:range:primaryString:alternativeStrings:forStringInRect:view:completionHandler:] () #26 0x00000001880ca0c0 in -[NSSpellChecker _showInlinePredictionForReplacingRange:markedRange:string:withString:view:client:lastReplacementRange:completeWordIndexes:resultDictionary:completionHandler:] () #27 0x00000001880cb26c in -[NSSpellChecker showCompletionForCandidate:selectedRange:offset:inString:rect:view:client:completionHandler:] () #28 0x0000000188303a94 in -[NSTextCheckingController handleCompletionFromCandidates:forSelectedRange:offset:inAnnotatedString:rect:view:] () #29 0x00000001882f9054 in -[NSTextCheckingController viewForRange:completionHandler:] () #30 0x00000001883041c8 in __60-[NSTextCheckingController handleCandidates:sequenceNumber:]_block_invoke () #31 0x000000018789105c in -[NSTextCheckingController annotatedSubstringForProposedRange:wrap:completionHandler:failureHandler:] () #32 0x0000000187890da4 in -[NSTextCheckingController annotatedSubstringForProposedRange:completionHandler:] () #33 0x00000001878927d4 in -[NSTextCheckingController annotatedSubstringForSelectedRangeWithCompletionHandler:] () #34 0x0000000188304134 in -[NSTextCheckingController handleCandidates:sequenceNumber:] () #35 0x00000001883067e0 in ___NSRunLoopTimerCreateWithHandler_block_invoke () #36 0x0000000183842e14 in __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ () #37 0x0000000183842ad4 in __CFRunLoopDoTimer () #38 0x0000000183842610 in __CFRunLoopDoTimers () #39 0x0000000183828a18 in __CFRunLoopRun () #40 0x0000000183827c58 in CFRunLoopRunSpecific () #41 0x000000018f2bc27c in RunCurrentEventLoopInMode () #42 0x000000018f2bf4e8 in ReceiveNextEventCommon () #43 0x000000018f44a484 in _BlockUntilNextEventMatchingListInModeWithFilter () #44 0x000000018774fab4 in _DPSNextEvent () #45 0x00000001880ee5b0 in -[NSApplication(NSEventRouting) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] () #46 0x0000000187742c64 in -[NSApplication run] () #47 0x000000018771935c in NSApplicationMain () If I run the debug version of the app without the debugger, it works fine as well. In fact, if I run the app without "All Objective-C Exceptions" breakpoint, it also works fine. So it seems like some framework issue, which is making it hard to run and test my app. What’s the reason for this, and is this an issue I should be worried about for when the app is available to my users?
Topic: UI Frameworks SubTopic: AppKit Tags:
Replies
3
Boosts
0
Views
123
Activity
Jun ’25
What is causing the Freeze in this SwiftUI View?
I made a small project that freezes after the following steps: Run the app Turn on VoiceOver Tap on "Header" once so it is read out loud Turn off VoiceOver Scroll up and down really quickly Using the Time Profiler, the items in the Main Thread followed by significant drops are: 19.11 s 85.1% 0 s closure #2 in closure #1 in ViewRendererHost.render(interval:updateDisplayList:targetTimestamp:) 13.05 s 58.1% 4.00 ms ViewGraph.updateOutputs(async:) 7.97 s 35.5% 83.00 ms AG::Graph::UpdateStack::update() 5.76 s 25.6% 19.00 ms LayoutScrollableTransform.updateValue() 1.73 s  7.7% 2.00 ms specialized NativeDictionary.setValue(:forKey:isUnique:) 579.00 ms  2.6% 58.00 ms 0x100a8c908 311.00 ms  1.4% 165.00 ms __thread_stack_pcs I see the memory usage increase by about 0.6 MB per second while frozen. And there are a few things that prevent the freeze: Changing LazyVStack for VStack Removing the VStack from the Section Removing the header: parameter from the Section Reducing the range of the ForEach Move the Text(verbatim: "Text at same level as ForEach containing Section") outside of the LazyVStack However, these are all things I need to keep for my actual app. So what is causing this hang? Am I using SwiftUI in any way it's not intended to be used? import SwiftUI struct ContentView: View { var body: some View { VStack { VStack(alignment: .leading) { Image(systemName: "pencil.circle.fill") Text("Title") Text("Label") } ScrollView { LazyVStack { Section { VStack { ForEach(0..<70) { _ in Text(verbatim: "A") } } } header: { Text(verbatim: "Header") } Text(verbatim: "Text at same level as ForEach containing Section") } } } } } AppDelegate: @main class AppDelegate: UIResponder, UIApplicationDelegate { var window: UIWindow? func application( _ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? ) -> Bool { let window = UIWindow(frame: UIScreen.main.bounds) window.rootViewController = UINavigationController(rootViewController: MainViewController()) window.makeKeyAndVisible() self.window = window return true } } MainViewController: import UIKit import SwiftUI final class MainViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() let swiftUIView = ContentView() let hostingController = UIHostingController(rootView: swiftUIView) addChild(hostingController) hostingController.view.translatesAutoresizingMaskIntoConstraints = false view.addSubview(hostingController.view) NSLayoutConstraint.activate([ hostingController.view.topAnchor.constraint(equalTo: view.topAnchor), hostingController.view.bottomAnchor.constraint(equalTo: view.bottomAnchor), hostingController.view.leadingAnchor.constraint(equalTo: view.leadingAnchor), hostingController.view.trailingAnchor.constraint(equalTo: view.trailingAnchor) ]) hostingController.didMove(toParent: self) view.backgroundColor = .white } }
Replies
1
Boosts
0
Views
247
Activity
Jun ’25
Application crashes when using TextEditor(text, selection)
I have a TextEditor, to the constructor of which in addition to the text I pass an object of the TextSelection? type. I check on the Simulator with iOS 18.2. An attempt to clear the text leads to a crash with the message "Thread 1: Fatal error: String index is out of bounds" in Xcode. More about the error: libswiftCore.dylib`_swift_runtime_on_report: -> 0x194f32024 <+0>: ret More about the reproduction conditions: struct MyView: View { @Bindable private var viewModel = MyViewModel() @State var myTextSelection: TextSelection? = nil var body: some View { ZStack { // Some other code myEditor // Some other code } .toolbar { ToolbarItem(placement: .primaryAction) { Button { viewModel.clear() } label: { Label("Clear", systemImage: "eraser") } } } } var myEditor: some View { ZStack(alignment: .topLeading) { TextEditor(text: $viewModel.text, selection: $myTextSelection) .disableAutocorrection(true) .autocapitalization(.sentences) } // Some other code } } MyViewModel: @Observable final class MyViewModel: ObservableObject { var text: String = "" func clear() { text = "" } }
Replies
1
Boosts
0
Views
142
Activity
May ’25
Sorting of FetchResults in TableView broken in xcode 26
Previously, I sorted my FetchResult in a TableView like this: @FetchRequest( sortDescriptors: [SortDescriptor(\.rechnungsDatum, order: .forward)], predicate: NSPredicate(format: "betragEingang == nil OR betragEingang == 0") ) private var verguetungsantraege: FetchedResults&lt;VerguetungsAntraege&gt; ... body ... Table(of:VerguetungsAntraege.self, sortOrder: $verguetungsantraege.sortDescriptors) { TableColumn("date", value:\.rechnungsDatum) { item in Text(Formatters.dateFormatter.string(from: item.rechnungsDatum ?? Date()) ) } .width(120) TableColumn("rechNrKurz", value:\.rechnungsNummer) { item in Text(item.rechnungsNummer ?? "") } .width(120) TableColumn("betrag", value:\.totalSum ) { Text(Formatters.currencyFormatter.string(from: $0.totalSum as NSNumber) ?? "kein Wert") } .width(120) TableColumn("klient") { Text(db.getKlientNameByUUID(id: $0.klient ?? UUID(), moc: moc)) } } rows: { ForEach(Array(verguetungsantraege)) { antrag in TableRow(antrag) } } There seem to be changes here in Xcode 26. In any case, I always get the error message in each line with TableColumn("title", value: \.sortingField) Ambiguous use of 'init(_:value:content:)' Does anyone have any idea what's changed? Unfortunately, the documentation doesn't provide any information.
Replies
0
Boosts
0
Views
184
Activity
Jun ’25
NSDockTilePlugIn and dockMenu selector never returns
I have a class: class MyDockTilePlugin: NSObject, NSDockTilePlugIn { func setDockTile(_ dockTile: NSDockTile?) { return } func dockMenu() -> NSMenu? { let menu = NSMenu() let it = NSMenuItem(title: "choose me!", action: #selector(self.selectDMIP(_:)), keyEquivalent: "") it.target = self menu.addItem(it) return menu } @objc func selectDMIP(_ sender: NSMenuItem) { print("you selected me!") } } and I follow the instructions to put it in a Bundle and copy it into the main app. I run the main app. Change the Dock options to Keep in Dock. Quit the main app. Right-click the Dock icon. I get the menu, but when selected, it never prints "you selected me!" What I do see after selecting the menu item is the plugin class reloading. Any ideas how to capture the menu item selection?
Topic: UI Frameworks SubTopic: AppKit
Replies
1
Boosts
0
Views
109
Activity
May ’25
The operation couldn’t be completed. (ModelCatalog.CatalogErrors.AssetErrors error 1.)
error I get when I try and install predictive code completion model
Replies
0
Boosts
0
Views
244
Activity
Jun ’25
iOS app bottom and top layout not working
Hello. I have a projet due in a few days and there is smth wrong with my code. It has some kind of "border" on top and on the bottom, and it really interferes with my app. At first thought it was a simulator problem so tried on a physical iphone (13pr) and the border was still there. Already tried to use .ignoreSafeArea but still doesnt work. So I came here. Please help me, thanks! Attached below is the screenshot of the "border" This is my code for Contentview ContentView.swift Please help asap, as the project is due i a few days. Thanks!
Topic: UI Frameworks SubTopic: SwiftUI
Replies
2
Boosts
0
Views
130
Activity
Jun ’25