Explore the art and science of app design. Discuss user interface (UI) design principles, user experience (UX) best practices, and share design resources and inspiration.

Learn about designing great app and game experiences

Posts under General subtopic

Post

Replies

Boosts

Views

Activity

Novice SwiftUI developer can't make network call
I'm trying to use URL structure in the foundation framework and it is failing to build, returning a nil value. Could it be trying to evaluate the string I am giving it as a variable for its argument at build time? Is there a test argument I can give URL to see if it can return a non-nil value? (of URL type)?
Topic: Design SubTopic: General
17
0
1.7k
Sep ’25
iOS 26 Modal View Controller with Transparent Background
Prior to iOS 26, this successfully gave me a modal view with a transparent background: let settingsVC = MySettingsViewController() settingsVC.modalPresentationStyle = .automatic //settingsVC.modalPresentationStyle = .overCurrentContext self.present(settingsVC, animated: true, completion: { } MySettingsViewController: self.view.backgroundColor = UIColor(white: 0, alpha: 0.5) Now in iOS 26, modal view is presented in a opaque grey background.
Topic: Design SubTopic: General Tags:
0
0
673
Oct ’25
Handling Context Save Errors
I was wondering if errors are common for the code below for saving SwiftData data and what would be the best way to handle them (popup, closing the app)? do { try modelContext.save() } catch { print("error") }
Topic: Design SubTopic: General Tags:
1
0
285
Jan ’26
tvOS alternative app icons
Does anyone know if alternate app icons are actually supposed to work for Apple TV projects? We tried to set this up, and while it works in Debug, we run into validation errors when uploading the app to App Store Connect. Is this feature officially supported on tvOS, or is it iOS-only?
Topic: Design SubTopic: General
1
0
219
3w
CloudKit not storing or updating public data in real time.
My newly released App Snapshot-Chess-Move, #1592848671, is not creating a public database of chess moves as I expect. What steps do I need to do inorder for my App to be using a public database. It appears as if each of my iOS devices, iPhone, iPad and Mac mini each have a private database of chess moves. When I change my data on the iPad, I expect the new data to appear (with slight delays) on the Mac.. I do not know what to do next. Please help me. This was working in Development mode but not in Production when I submitted my App for release. UPDATE: The cloud data is copied locally to a @Quary variable and updated by using .insert, .delete and .save commands. So, I deleted and re-downloaded my apps on each device, iPad, iPhone, and Mac and obtained the same cloud data. So how do users get the most recent copy of the cloud. Do they need to delete their App and start over? Is there a .update command that can do this updating for me? Also, I pushed the App out of the background and restarted the App to obtain the updated cloud data.
Topic: Design SubTopic: General Tags:
3
0
211
Apr ’25
SF Symbols 7
Will the draw (animation) functionality of SF Symbols be available when symbols are cut/pasted into a Keynote presentation? Better yet, will the draw tools from SF Symbols 7 be available in Keynote for objects created in Keynote?
Topic: Design SubTopic: General Tags:
1
0
189
Jun ’25
Macos26 Tahoé is Hell with "Relocated Items"
I just discover that feature (a folder lost in the middle of others desktop folder ). so with each updates: -/usr/local is emptied -somes apps in the Application folder, are deleted, even paid apps .. -i lost : Docker, python 3.13, latexlive2025, Apache NetBeans, java install, Affinity Publisher 2, all my 3D slicers ... github desktop, Epic Games Launcher, ........ 296go of apps Franckly : c'est la merde !!! I am using a MacBook Pro 16" 2019 any way to stop this behavior ? thank you !!!
Topic: Design SubTopic: General
0
0
682
Sep ’25
Avoid using a segmented control in a toolbar
Hi, in the Human Interface Guidelines, Apple writes: Avoid using a segmented control in a toolbar. Toolbar items act on the current screen — they don’t let people switch contexts like segmented controls do. Along with this image: Source I'm confused by this example. The screenshot seems to be showing a segmented control in a toolbar. Is this saying that the Phone app's All/Missed toggle is different from a segmented control? Under iOS 26 it seems to take a different style compared to a regular segmented control. If so, which component is used to create this filter? Could you please clarify the guidelines? Thank you.
1
0
383
Sep ’25
Effect liquid glass on app icon
Why my app icon doesn't have effect liquid glass on ios26. My team dev still not upgrade to xcode26, so I have to export icon for them. And I don't see the effect like stroke of the detail.
Topic: Design SubTopic: General
1
0
756
Oct ’25
Gray Shades That Adapt to Dark Mode
Hi, Normally we need many shades of gray in any App and Apple system have only 3 , Primery, Secondary, and Gray, so to make Gray regress that automatically adapt to Dark Mode we just use opacity on these colors ? there's no system built in Gray degrees ? Kind Regards
Topic: Design SubTopic: General
0
0
94
May ’25
Xcode 26 Beta 3 – SwiftUI Previews & Project Window State Broken After Minor Edits?
Hi everyone, since updating to Xcode 26 Beta 3, I’m seeing some really strange behavior. I just changed the color of a Color asset in my SwiftUI view – literally just switched from one named color to another – and suddenly: • Previews stopped working completely, with vague or no error messages. • Even when I changed the color back to what it was before, the previews still refused to build. • In addition, Xcode no longer restores the open tabs/windows when reopening the project. It just shows a blank editor every time I open it. This all happened without touching any project settings or code structure – just a simple color swap. Has anyone else run into this with Xcode 26 Beta 3? Would love to know if it’s a known bug or if there’s a workaround (besides nuking Derived Data, which I’ve already tried). Thanks!
Topic: Design SubTopic: General
0
0
223
Jul ’25
How to get a truly clear glass effect for a circle
I'm using .glassEffect(.clear) on a transparent circle over a gradient background. While it's closer to clear than the plain glass effect, it't not really clear, like clear glass. Here is the code. Is there a glass effect that really looks like clear glass? Circle() .fill(.clear) .frame(width: 180, height: 180) .glassEffect(.clear)
Topic: Design SubTopic: General
1
0
871
Oct ’25
Resize Window Form After Loading
I am trying to resize a Window Form after it loads and have done quite a bit of searching for code to do it. Here is one code snippet that works to size the form during the design phase. self.view.window?.contentMinSize = CGSize(width: 1100, height: 310) I have tried code like below to increase the window size after the Form loads if let myWindow = self.view.window ?? NSApplication.shared.mainWindow { // Increase window size and position after it loads let newRect = NSRect(x: 100, y: 100, width: 1400, height: 900) } It seems that this code not only changes the Form size after loading, but also changes the size of the Form in Main.swift, which is something I don't want. I read elsewhere that I had to disable constraints to resize the Form, so I tried code below. let tableView = NSTableView() tableView.translatesAutoresizingMaskIntoConstraints = false let newRect = NSRect(x: 100, y: 0, width: 1100, height: 600) myWindow?.setFrame(newRect, display: true) That code did not seem to do anything as well. Also, the Form displays in the lower left of the screen. Note that main reason I want to resize the Form after loading is to keep it smaller during design development. The same goes for the NSTableView, which I have not gotten to yet.
0
0
219
Oct ’25
iOS 26 Liquid Glass - Without any Blur - Possible?
let glassView = UIVisualEffectView(effect: UIGlassEffect(style: .clear)) glassView.frame = CGRect(x: 100, y: 200, width: 200, height: 400) self.view.addSubview(glassView) Though UIGlassEffect has two variants: .regular and .clear, even the clear one has some blur on the background. Is there a way to do get absolute no blur? Edges still have the glass effect. Apple does this in two places: Camera app: Text magnifier:
Topic: Design SubTopic: General Tags:
0
0
730
Oct ’25
Search Function
Dear Developer, Is there a way to create a function to search with inside a text without having to be outside all of the messages? In other words, could I go into one of my contact’s texts and then search specifically inside that message as can be done on Android? This would be such an amazing function And make life so much easier. Thank you.
Topic: Design SubTopic: General
0
0
84
Apr ’25
Testing In-App Purchases
Hi, I have a couple of questions in regards to testing in-app purchases. I tested the subscription on a device but I'm not sure how to reset so I can test again. I didn't see the subscription in device settings or in Debug -> StoreKit -> Manage Subscriptions window. Additionally, I was wondering if there was a way to detect the subscription being made. I implemented this, but I'm not sure if that will work: .onChange(of: Product.SubscriptionInfo.RenewalState.subscribed) { if Product.SubscriptionInfo.RenewalState.subscribed == .subscribed { } }
13
0
442
Jul ’25
iOS 26.0.1: Different Liquid Glass Effects
Hello everyone, In the current iOS version, changes in the "liquid glass" light shining effects can repeatedly be observed on older iPhone devices (12/13/14). This change is often seen after the device is rebooted or after a SystemMemoryReset.ips (System Analysis Data). It changes very often... I'm not currently working on apps myself, but perhaps someone has ideas for the upcoming updates involving Liquid Glass. (please also check the screenshots)
0
0
823
Oct ’25
Correct way to handle 2 to 3 column switch
I'm using a NavigationSplitView on macOS which needs to show 2 or 3 columns depending on the selection of the sidebar. Column 1 has a list of main activities. Some of these just have some data to show and some have a sublist. Currently, when an item that has no sublist is selected, I set the 2nd column (content:) to: Spacer() .navigationSplitViewColumnWidth(0) This works, although it started hitting bugs requiring a workaround on macOS 26, which got me wondering, what is the correct approach here? NavigationSplitViewVisibility.doubleColumn is not the solution, as this hides column 1, not column 2.
Topic: Design SubTopic: General Tags:
0
0
830
Oct ’25
Novice SwiftUI developer can't make network call
I'm trying to use URL structure in the foundation framework and it is failing to build, returning a nil value. Could it be trying to evaluate the string I am giving it as a variable for its argument at build time? Is there a test argument I can give URL to see if it can return a non-nil value? (of URL type)?
Topic: Design SubTopic: General
Replies
17
Boosts
0
Views
1.7k
Activity
Sep ’25
iOS 26 Modal View Controller with Transparent Background
Prior to iOS 26, this successfully gave me a modal view with a transparent background: let settingsVC = MySettingsViewController() settingsVC.modalPresentationStyle = .automatic //settingsVC.modalPresentationStyle = .overCurrentContext self.present(settingsVC, animated: true, completion: { } MySettingsViewController: self.view.backgroundColor = UIColor(white: 0, alpha: 0.5) Now in iOS 26, modal view is presented in a opaque grey background.
Topic: Design SubTopic: General Tags:
Replies
0
Boosts
0
Views
673
Activity
Oct ’25
Handling Context Save Errors
I was wondering if errors are common for the code below for saving SwiftData data and what would be the best way to handle them (popup, closing the app)? do { try modelContext.save() } catch { print("error") }
Topic: Design SubTopic: General Tags:
Replies
1
Boosts
0
Views
285
Activity
Jan ’26
tvOS alternative app icons
Does anyone know if alternate app icons are actually supposed to work for Apple TV projects? We tried to set this up, and while it works in Debug, we run into validation errors when uploading the app to App Store Connect. Is this feature officially supported on tvOS, or is it iOS-only?
Topic: Design SubTopic: General
Replies
1
Boosts
0
Views
219
Activity
3w
CloudKit not storing or updating public data in real time.
My newly released App Snapshot-Chess-Move, #1592848671, is not creating a public database of chess moves as I expect. What steps do I need to do inorder for my App to be using a public database. It appears as if each of my iOS devices, iPhone, iPad and Mac mini each have a private database of chess moves. When I change my data on the iPad, I expect the new data to appear (with slight delays) on the Mac.. I do not know what to do next. Please help me. This was working in Development mode but not in Production when I submitted my App for release. UPDATE: The cloud data is copied locally to a @Quary variable and updated by using .insert, .delete and .save commands. So, I deleted and re-downloaded my apps on each device, iPad, iPhone, and Mac and obtained the same cloud data. So how do users get the most recent copy of the cloud. Do they need to delete their App and start over? Is there a .update command that can do this updating for me? Also, I pushed the App out of the background and restarted the App to obtain the updated cloud data.
Topic: Design SubTopic: General Tags:
Replies
3
Boosts
0
Views
211
Activity
Apr ’25
SF Symbols 7
Will the draw (animation) functionality of SF Symbols be available when symbols are cut/pasted into a Keynote presentation? Better yet, will the draw tools from SF Symbols 7 be available in Keynote for objects created in Keynote?
Topic: Design SubTopic: General Tags:
Replies
1
Boosts
0
Views
189
Activity
Jun ’25
Macos26 Tahoé is Hell with "Relocated Items"
I just discover that feature (a folder lost in the middle of others desktop folder ). so with each updates: -/usr/local is emptied -somes apps in the Application folder, are deleted, even paid apps .. -i lost : Docker, python 3.13, latexlive2025, Apache NetBeans, java install, Affinity Publisher 2, all my 3D slicers ... github desktop, Epic Games Launcher, ........ 296go of apps Franckly : c'est la merde !!! I am using a MacBook Pro 16" 2019 any way to stop this behavior ? thank you !!!
Topic: Design SubTopic: General
Replies
0
Boosts
0
Views
682
Activity
Sep ’25
Avoid using a segmented control in a toolbar
Hi, in the Human Interface Guidelines, Apple writes: Avoid using a segmented control in a toolbar. Toolbar items act on the current screen — they don’t let people switch contexts like segmented controls do. Along with this image: Source I'm confused by this example. The screenshot seems to be showing a segmented control in a toolbar. Is this saying that the Phone app's All/Missed toggle is different from a segmented control? Under iOS 26 it seems to take a different style compared to a regular segmented control. If so, which component is used to create this filter? Could you please clarify the guidelines? Thank you.
Replies
1
Boosts
0
Views
383
Activity
Sep ’25
Effect liquid glass on app icon
Why my app icon doesn't have effect liquid glass on ios26. My team dev still not upgrade to xcode26, so I have to export icon for them. And I don't see the effect like stroke of the detail.
Topic: Design SubTopic: General
Replies
1
Boosts
0
Views
756
Activity
Oct ’25
Gray Shades That Adapt to Dark Mode
Hi, Normally we need many shades of gray in any App and Apple system have only 3 , Primery, Secondary, and Gray, so to make Gray regress that automatically adapt to Dark Mode we just use opacity on these colors ? there's no system built in Gray degrees ? Kind Regards
Topic: Design SubTopic: General
Replies
0
Boosts
0
Views
94
Activity
May ’25
Xcode 26 Beta 3 – SwiftUI Previews & Project Window State Broken After Minor Edits?
Hi everyone, since updating to Xcode 26 Beta 3, I’m seeing some really strange behavior. I just changed the color of a Color asset in my SwiftUI view – literally just switched from one named color to another – and suddenly: • Previews stopped working completely, with vague or no error messages. • Even when I changed the color back to what it was before, the previews still refused to build. • In addition, Xcode no longer restores the open tabs/windows when reopening the project. It just shows a blank editor every time I open it. This all happened without touching any project settings or code structure – just a simple color swap. Has anyone else run into this with Xcode 26 Beta 3? Would love to know if it’s a known bug or if there’s a workaround (besides nuking Derived Data, which I’ve already tried). Thanks!
Topic: Design SubTopic: General
Replies
0
Boosts
0
Views
223
Activity
Jul ’25
How to get a truly clear glass effect for a circle
I'm using .glassEffect(.clear) on a transparent circle over a gradient background. While it's closer to clear than the plain glass effect, it't not really clear, like clear glass. Here is the code. Is there a glass effect that really looks like clear glass? Circle() .fill(.clear) .frame(width: 180, height: 180) .glassEffect(.clear)
Topic: Design SubTopic: General
Replies
1
Boosts
0
Views
871
Activity
Oct ’25
Figma App Icon Template iOS 26
Where is the Figma App Icon Template mentioned in the Developer session https://developer.apple.com/videos/play/wwdc2025/361?
Topic: Design SubTopic: General Tags:
Replies
0
Boosts
0
Views
388
Activity
Jul ’25
Resize Window Form After Loading
I am trying to resize a Window Form after it loads and have done quite a bit of searching for code to do it. Here is one code snippet that works to size the form during the design phase. self.view.window?.contentMinSize = CGSize(width: 1100, height: 310) I have tried code like below to increase the window size after the Form loads if let myWindow = self.view.window ?? NSApplication.shared.mainWindow { // Increase window size and position after it loads let newRect = NSRect(x: 100, y: 100, width: 1400, height: 900) } It seems that this code not only changes the Form size after loading, but also changes the size of the Form in Main.swift, which is something I don't want. I read elsewhere that I had to disable constraints to resize the Form, so I tried code below. let tableView = NSTableView() tableView.translatesAutoresizingMaskIntoConstraints = false let newRect = NSRect(x: 100, y: 0, width: 1100, height: 600) myWindow?.setFrame(newRect, display: true) That code did not seem to do anything as well. Also, the Form displays in the lower left of the screen. Note that main reason I want to resize the Form after loading is to keep it smaller during design development. The same goes for the NSTableView, which I have not gotten to yet.
Replies
0
Boosts
0
Views
219
Activity
Oct ’25
iOS 26 Liquid Glass - Without any Blur - Possible?
let glassView = UIVisualEffectView(effect: UIGlassEffect(style: .clear)) glassView.frame = CGRect(x: 100, y: 200, width: 200, height: 400) self.view.addSubview(glassView) Though UIGlassEffect has two variants: .regular and .clear, even the clear one has some blur on the background. Is there a way to do get absolute no blur? Edges still have the glass effect. Apple does this in two places: Camera app: Text magnifier:
Topic: Design SubTopic: General Tags:
Replies
0
Boosts
0
Views
730
Activity
Oct ’25
Search Function
Dear Developer, Is there a way to create a function to search with inside a text without having to be outside all of the messages? In other words, could I go into one of my contact’s texts and then search specifically inside that message as can be done on Android? This would be such an amazing function And make life so much easier. Thank you.
Topic: Design SubTopic: General
Replies
0
Boosts
0
Views
84
Activity
Apr ’25
Fgima Design to SiwftUI PlugIn from Apple
Hi, It would be sure if Apple creates a Fgima plug in to convert designs to SwiftUI, no one can do it like Apple and it would be SUPER and super time saving ! -- Kind Regards
Topic: Design SubTopic: General
Replies
1
Boosts
0
Views
139
Activity
May ’25
Testing In-App Purchases
Hi, I have a couple of questions in regards to testing in-app purchases. I tested the subscription on a device but I'm not sure how to reset so I can test again. I didn't see the subscription in device settings or in Debug -> StoreKit -> Manage Subscriptions window. Additionally, I was wondering if there was a way to detect the subscription being made. I implemented this, but I'm not sure if that will work: .onChange(of: Product.SubscriptionInfo.RenewalState.subscribed) { if Product.SubscriptionInfo.RenewalState.subscribed == .subscribed { } }
Replies
13
Boosts
0
Views
442
Activity
Jul ’25
iOS 26.0.1: Different Liquid Glass Effects
Hello everyone, In the current iOS version, changes in the "liquid glass" light shining effects can repeatedly be observed on older iPhone devices (12/13/14). This change is often seen after the device is rebooted or after a SystemMemoryReset.ips (System Analysis Data). It changes very often... I'm not currently working on apps myself, but perhaps someone has ideas for the upcoming updates involving Liquid Glass. (please also check the screenshots)
Replies
0
Boosts
0
Views
823
Activity
Oct ’25
Correct way to handle 2 to 3 column switch
I'm using a NavigationSplitView on macOS which needs to show 2 or 3 columns depending on the selection of the sidebar. Column 1 has a list of main activities. Some of these just have some data to show and some have a sublist. Currently, when an item that has no sublist is selected, I set the 2nd column (content:) to: Spacer() .navigationSplitViewColumnWidth(0) This works, although it started hitting bugs requiring a workaround on macOS 26, which got me wondering, what is the correct approach here? NavigationSplitViewVisibility.doubleColumn is not the solution, as this hides column 1, not column 2.
Topic: Design SubTopic: General Tags:
Replies
0
Boosts
0
Views
830
Activity
Oct ’25