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.

All subtopics
Posts under Design topic

Post

Replies

Boosts

Views

Activity

iOS 18 dark mode
Hello, I am a UI designer. I am trying to modify our app's icon to accommodate Apple's iOS 18 dark mode. Our app icon is quite complex in shape, making it difficult to recognize in dark mode. Is it okay if the shape differs slightly between light mode and dark mode? Or should I just change the color?
Topic: Design SubTopic: General
0
0
652
Sep ’24
Can I use typeface Apple SF Pro for a book?
Hi, I send a request to Legal team of Rights and Permissions about using apple font SF Pro for a book cca two months ago and we still have not received any response. Is it even possible to use SF Pro in a book that will have a print run of 500 copies. Thanks
Topic: Design SubTopic: General Tags:
1
0
3k
Apr ’23
SwiftData and #DEBUG with the canvas...
Hi all, Very new to this. Just getting into swift data, and am frustrated with the canvas not working with modelContainers in SwiftData. My understanding is that they work if inMemory = true, but not in the default case where data is persistent after an app is quit. Can anyone tell me if it is possible to conditionally create the modelContainer type based on a flag... If Bool:Canvas then inMemory = True, Else False... Then using this flag for all data models so my list views populate on the canvas, without having to run the simulator each time... I would assume you could also pre-populate the inMemory option if it is empty also... Or is there a simple and obvious solution that I am oblivious to. If it is possible, is it worth the time, hassle, and any possible issues?
0
0
582
Dec ’24
Undefined symbol and linker command failed errors
Hi, I was searching and replacing code where all of the sudden I got the following errors: Undefined symbol: AppName.Client.init(id: Swift.Int, name: Swift.String, StructVariable: Swift.Int?, structVariable: [Struct]?) -> AppNameStruct Linker command failed with exit code 1 (use -v to see invocation) I replaced the names in the first error message for privacy reasons. I tried quitting Xcode and restarting my computer but the error persisted. Any help on resolving this would be greatly appreciated.
Topic: Design SubTopic: General Tags:
1
0
858
Aug ’24
Universal link opening excluded path on the app instead of browser.
I need my app to open all other links except domain.com. But clicking on domain.com still opens the app though I have added 'excluded': true. Below is my aasa file { "applinks": { "apps": [], "details": [ { "appID": "com.domain", "paths": ["NOT /"], "components": [ { "/": "/", "exclude": true }, { "/": "/biz/*" }, { "/": "/offers/deal-detail*", "?": { "oId": "*" } }, { "/": "/review/*" }, { "/": "/emailActionHandler*" } ] } ] } } I have also tried to verify this with swcutil tool, and it gives the right matches and blocks 'domain.com'. But the actual behavior on an iOS device is not the same.
1
0
770
Oct ’24
UICollectionView
I have 12 cells in a collection view. I am trying to find Swift code to make it display (4 rows x 3 columns) when the device is portrait, and then (2 rows by 6 columns) when in landscape. I need each cell to evenly layout within the view and to fill it.
Topic: Design SubTopic: General
0
0
457
Jul ’24
PiPAgent not launching from a Sandboxed app.
Hi, I am developing an app that has a WKWebView and it can open sites like Youtube. The app is sandboxed as it is meant to be uploaded to the mac App Store. It has a feature PiP where we start the native PiP by calling a browser Javascript where we tell the WKWEBView to fire the PiP. It works well when we are running the code from XCODE in Debug scheme. When we run the code from release mode by archiving it or directly from the build folder, the WKWebView is not able to fire the PiP Agent and thus the Native PiP window is not visible, while the site shows that PiP is opened and we can here the sound being played. But PiP window is not visible. I cannot see PiPAgent in activity monitor. Why does it not work from within the release build outside xcode. But when I try to run the build directly from the Finder in builds folder, this PiP feature does not work. Request technical help for this. Thanks!
0
0
675
Jul ’24
drop-down box Bug
There is a display issue when browsing wireless networks in the dropdown menu. In iOS version 18.1.1, the Wi-Fi switch is in the closed state; Step 1: Open the notification dropdown, and the first image bug appears; It will take some time for it to display [normally.]
1
0
560
Dec ’24
18.2 Beta 22C151 email
Just updated to newest beta of 18.2. The update corrects several major email issues but now I am only able to pull sone of my emails when I open mail. after opening my mail on the 18.2 iPhone 15 pro max I am ablevto pull only 1 message from Xfinity. When I check on my pc using outlook 2016 I am able to pull 18 additional messages. Going back to my iPhone after a half hour the additional mail messages still do not show up even after doing a hard reset of the phone. apologies, but these mail issues need to be resolved. It is bothersome that ios 18 was even released to the public at all with these type of issues.
Topic: Design SubTopic: General Tags:
1
0
797
Dec ’24
Center alignment in row of LazyVGrid
I am creating a LazyVGrid with 2 columns. I want it so that if there is only one item in a row, then it goes to the center of the row. I tried using an HStack with a Spacer, but it doesn't push it to the center. How do I do it? ForEach(pets) { pet in VStack { Image(pet.species.rawValue) .resizable() .frame(width: 80, height: 80) Text(pet.name) .poppinsBold(size: 16) } } HStack { if pets.hasEvenNumber { Spacer(minLength: 0) } Button { addPetSheet = true } label: { VStack { ZStack { Circle() .frame(width: 70, height: 70) .foregroundStyle(.gray) Image(systemName: "plus") .foregroundStyle(.white) .font(.title) } Text("Add") .poppinsBold(size: 16) } } } }
Topic: Design SubTopic: General Tags:
0
0
520
Oct ’24
Progressive Blur With List
I'm trying to setup my view so that there's (in order from top of display to bottom) a VStack with some content, followed by a List, followed by another VStack with a couple buttons where progressive blurs separate the list and the two VStack's content. Now, in the current version of my app when the user scrolls up or down, the list just cuts off. I'm having a very difficult time maintaining the entire view's vertical positioning while adding these blurs with ZStack. The code below is the current implementation with an attempted progressive blur. Right now, it's close, but the list is acting exactly how I don't want it - anchoring to the top of the display (its natural position) and causes the toolbar to blur when scrolled under (I can't disable toolbar without losing my toolbarItems either). Any help is appreciated. NavigationStack { VStack { ZStack { List(filteredItems) { item in NavigationLink(destination: ItemDetailView(item: item)) { HStack(spacing: 15) { Image(systemName: item.icon) VStack(alignment: .leading) { Text(item.name) Text("") } .multilineTextAlignment(.leading) } .padding(.vertical, 5) } } .scrollIndicators(.hidden) .scrollContentBackground(.hidden) VStack(spacing: 5) { if #available(iOS 18.0, *) { Image(systemName: "plus.square.on.square.fill") .resizable() .scaledToFit() .frame(maxHeight: 50) .symbolEffect(.bounce.up, options: .nonRepeating) } else { Image(systemName: "plus.square.on.square.fill") .resizable() .scaledToFit() .frame(maxHeight: 50) } Text("Items") .font(.largeTitle.bold()) Text("Create, View, and Manage Your Items") .font(.system(size: 12).weight(.bold)) .multilineTextAlignment(.center) ScrollView(.horizontal) { HStack(spacing: 20) { filterButton(icon: "car.fill", color: .red, label: "Auto") filterButton(icon: "cart.fill", color: .purple, label: "Shopping") filterButton(icon: "laptopcomputer", color: .blue, label: "Tech") filterButton(icon: "airplane", color: .orange, label: "Travel") filterButton(icon: "gamecontroller.fill", color: .green, label: "Entertainment") } .padding(.leading, 25) } .scrollBounceBehavior(.basedOnSize) .scrollIndicators(.hidden) Spacer() } .padding(.top) VStack { Rectangle() .fill(.thinMaterial) .frame(height: 300) .mask { VStack(spacing: 0) { LinearGradient(colors: [Color.black.opacity(0), Color.black.opacity(0.383), Color.black.opacity(0.707), Color.black.opacity(0.924), Color.black], startPoint: .bottom, endPoint: .top) .frame(height: 400) Rectangle() } } Spacer() } .ignoresSafeArea() VStack { Spacer() Rectangle() .fill(.thinMaterial) .frame(height: 200) .mask { VStack(spacing: 0) { LinearGradient(colors: [Color.black.opacity(0), Color.black.opacity(0.383), Color.black.opacity(0.707), Color.black.opacity(0.924), Color.black], startPoint: .top, endPoint: .bottom) .frame(height: 100) Rectangle() } } } .ignoresSafeArea() VStack(spacing: 12) { Spacer() Button { showingAddItemView.toggle() } label: { HStack { Image(systemName: "plus.circle") Spacer() .frame(width: 7) Text("New Item") .padding(.trailing, 3) } #if os(visionOS) .padding(.vertical) #endif } .padding(10) #if os(iOS) .background { Capsule() } #endif NavigationLink("Continue") { } } .padding()
0
0
740
Oct ’24
Animated Splash Screen
How do I go about putting an already animated logo, onto my splash screen? For more context, I used VistaCreate in order to make an app logo, along with an animation for the splash screen. Is there a way to use that animation on a splash screen?
0
0
777
Sep ’22
iOS 18 dark mode
Hello, I am a UI designer. I am trying to modify our app's icon to accommodate Apple's iOS 18 dark mode. Our app icon is quite complex in shape, making it difficult to recognize in dark mode. Is it okay if the shape differs slightly between light mode and dark mode? Or should I just change the color?
Topic: Design SubTopic: General
Replies
0
Boosts
0
Views
652
Activity
Sep ’24
Animated Symbols for the web
Hey guys, just wondering if animated sf symbols will be supported on the web, and if so, what the process for getting that set up looks like. Thanks so much! Sam
Replies
0
Boosts
0
Views
825
Activity
Jun ’23
Can I use typeface Apple SF Pro for a book?
Hi, I send a request to Legal team of Rights and Permissions about using apple font SF Pro for a book cca two months ago and we still have not received any response. Is it even possible to use SF Pro in a book that will have a print run of 500 copies. Thanks
Topic: Design SubTopic: General Tags:
Replies
1
Boosts
0
Views
3k
Activity
Apr ’23
SwiftData and #DEBUG with the canvas...
Hi all, Very new to this. Just getting into swift data, and am frustrated with the canvas not working with modelContainers in SwiftData. My understanding is that they work if inMemory = true, but not in the default case where data is persistent after an app is quit. Can anyone tell me if it is possible to conditionally create the modelContainer type based on a flag... If Bool:Canvas then inMemory = True, Else False... Then using this flag for all data models so my list views populate on the canvas, without having to run the simulator each time... I would assume you could also pre-populate the inMemory option if it is empty also... Or is there a simple and obvious solution that I am oblivious to. If it is possible, is it worth the time, hassle, and any possible issues?
Replies
0
Boosts
0
Views
582
Activity
Dec ’24
Use Sf Symbols to create an app
Can I create a Video Platform App like Netflix or Youtube by using Apple Sf Symbols 4 on iOS? Is it legal? (Your answer will help a lot. Thanks! 🙏🏻)
Topic: Design SubTopic: General Tags:
Replies
1
Boosts
0
Views
952
Activity
Apr ’23
post title for test post
this is a test post
Topic: Design SubTopic: General
Replies
1
Boosts
0
Views
479
Activity
Oct ’24
Undefined symbol and linker command failed errors
Hi, I was searching and replacing code where all of the sudden I got the following errors: Undefined symbol: AppName.Client.init(id: Swift.Int, name: Swift.String, StructVariable: Swift.Int?, structVariable: [Struct]?) -> AppNameStruct Linker command failed with exit code 1 (use -v to see invocation) I replaced the names in the first error message for privacy reasons. I tried quitting Xcode and restarting my computer but the error persisted. Any help on resolving this would be greatly appreciated.
Topic: Design SubTopic: General Tags:
Replies
1
Boosts
0
Views
858
Activity
Aug ’24
Universal link opening excluded path on the app instead of browser.
I need my app to open all other links except domain.com. But clicking on domain.com still opens the app though I have added 'excluded': true. Below is my aasa file { "applinks": { "apps": [], "details": [ { "appID": "com.domain", "paths": ["NOT /"], "components": [ { "/": "/", "exclude": true }, { "/": "/biz/*" }, { "/": "/offers/deal-detail*", "?": { "oId": "*" } }, { "/": "/review/*" }, { "/": "/emailActionHandler*" } ] } ] } } I have also tried to verify this with swcutil tool, and it gives the right matches and blocks 'domain.com'. But the actual behavior on an iOS device is not the same.
Replies
1
Boosts
0
Views
770
Activity
Oct ’24
UICollectionView
I have 12 cells in a collection view. I am trying to find Swift code to make it display (4 rows x 3 columns) when the device is portrait, and then (2 rows by 6 columns) when in landscape. I need each cell to evenly layout within the view and to fill it.
Topic: Design SubTopic: General
Replies
0
Boosts
0
Views
457
Activity
Jul ’24
New IPhone Design
I have new idea about how IPhone should be designed
Topic: Design SubTopic: General
Replies
0
Boosts
0
Views
928
Activity
Jul ’24
PiPAgent not launching from a Sandboxed app.
Hi, I am developing an app that has a WKWebView and it can open sites like Youtube. The app is sandboxed as it is meant to be uploaded to the mac App Store. It has a feature PiP where we start the native PiP by calling a browser Javascript where we tell the WKWEBView to fire the PiP. It works well when we are running the code from XCODE in Debug scheme. When we run the code from release mode by archiving it or directly from the build folder, the WKWebView is not able to fire the PiP Agent and thus the Native PiP window is not visible, while the site shows that PiP is opened and we can here the sound being played. But PiP window is not visible. I cannot see PiPAgent in activity monitor. Why does it not work from within the release build outside xcode. But when I try to run the build directly from the Finder in builds folder, this PiP feature does not work. Request technical help for this. Thanks!
Replies
0
Boosts
0
Views
675
Activity
Jul ’24
No encuentro App Store
App Store
Topic: Design SubTopic: General
Replies
1
Boosts
0
Views
408
Activity
Oct ’24
drop-down box Bug
There is a display issue when browsing wireless networks in the dropdown menu. In iOS version 18.1.1, the Wi-Fi switch is in the closed state; Step 1: Open the notification dropdown, and the first image bug appears; It will take some time for it to display [normally.]
Replies
1
Boosts
0
Views
560
Activity
Dec ’24
18.2 Beta 22C151 email
Just updated to newest beta of 18.2. The update corrects several major email issues but now I am only able to pull sone of my emails when I open mail. after opening my mail on the 18.2 iPhone 15 pro max I am ablevto pull only 1 message from Xfinity. When I check on my pc using outlook 2016 I am able to pull 18 additional messages. Going back to my iPhone after a half hour the additional mail messages still do not show up even after doing a hard reset of the phone. apologies, but these mail issues need to be resolved. It is bothersome that ios 18 was even released to the public at all with these type of issues.
Topic: Design SubTopic: General Tags:
Replies
1
Boosts
0
Views
797
Activity
Dec ’24
software
why are people having problems with the playground download when some people have full access to it What is the difference between us and other people who have it
Replies
0
Boosts
0
Views
489
Activity
Oct ’24
Center alignment in row of LazyVGrid
I am creating a LazyVGrid with 2 columns. I want it so that if there is only one item in a row, then it goes to the center of the row. I tried using an HStack with a Spacer, but it doesn't push it to the center. How do I do it? ForEach(pets) { pet in VStack { Image(pet.species.rawValue) .resizable() .frame(width: 80, height: 80) Text(pet.name) .poppinsBold(size: 16) } } HStack { if pets.hasEvenNumber { Spacer(minLength: 0) } Button { addPetSheet = true } label: { VStack { ZStack { Circle() .frame(width: 70, height: 70) .foregroundStyle(.gray) Image(systemName: "plus") .foregroundStyle(.white) .font(.title) } Text("Add") .poppinsBold(size: 16) } } } }
Topic: Design SubTopic: General Tags:
Replies
0
Boosts
0
Views
520
Activity
Oct ’24
Progressive Blur With List
I'm trying to setup my view so that there's (in order from top of display to bottom) a VStack with some content, followed by a List, followed by another VStack with a couple buttons where progressive blurs separate the list and the two VStack's content. Now, in the current version of my app when the user scrolls up or down, the list just cuts off. I'm having a very difficult time maintaining the entire view's vertical positioning while adding these blurs with ZStack. The code below is the current implementation with an attempted progressive blur. Right now, it's close, but the list is acting exactly how I don't want it - anchoring to the top of the display (its natural position) and causes the toolbar to blur when scrolled under (I can't disable toolbar without losing my toolbarItems either). Any help is appreciated. NavigationStack { VStack { ZStack { List(filteredItems) { item in NavigationLink(destination: ItemDetailView(item: item)) { HStack(spacing: 15) { Image(systemName: item.icon) VStack(alignment: .leading) { Text(item.name) Text("") } .multilineTextAlignment(.leading) } .padding(.vertical, 5) } } .scrollIndicators(.hidden) .scrollContentBackground(.hidden) VStack(spacing: 5) { if #available(iOS 18.0, *) { Image(systemName: "plus.square.on.square.fill") .resizable() .scaledToFit() .frame(maxHeight: 50) .symbolEffect(.bounce.up, options: .nonRepeating) } else { Image(systemName: "plus.square.on.square.fill") .resizable() .scaledToFit() .frame(maxHeight: 50) } Text("Items") .font(.largeTitle.bold()) Text("Create, View, and Manage Your Items") .font(.system(size: 12).weight(.bold)) .multilineTextAlignment(.center) ScrollView(.horizontal) { HStack(spacing: 20) { filterButton(icon: "car.fill", color: .red, label: "Auto") filterButton(icon: "cart.fill", color: .purple, label: "Shopping") filterButton(icon: "laptopcomputer", color: .blue, label: "Tech") filterButton(icon: "airplane", color: .orange, label: "Travel") filterButton(icon: "gamecontroller.fill", color: .green, label: "Entertainment") } .padding(.leading, 25) } .scrollBounceBehavior(.basedOnSize) .scrollIndicators(.hidden) Spacer() } .padding(.top) VStack { Rectangle() .fill(.thinMaterial) .frame(height: 300) .mask { VStack(spacing: 0) { LinearGradient(colors: [Color.black.opacity(0), Color.black.opacity(0.383), Color.black.opacity(0.707), Color.black.opacity(0.924), Color.black], startPoint: .bottom, endPoint: .top) .frame(height: 400) Rectangle() } } Spacer() } .ignoresSafeArea() VStack { Spacer() Rectangle() .fill(.thinMaterial) .frame(height: 200) .mask { VStack(spacing: 0) { LinearGradient(colors: [Color.black.opacity(0), Color.black.opacity(0.383), Color.black.opacity(0.707), Color.black.opacity(0.924), Color.black], startPoint: .top, endPoint: .bottom) .frame(height: 100) Rectangle() } } } .ignoresSafeArea() VStack(spacing: 12) { Spacer() Button { showingAddItemView.toggle() } label: { HStack { Image(systemName: "plus.circle") Spacer() .frame(width: 7) Text("New Item") .padding(.trailing, 3) } #if os(visionOS) .padding(.vertical) #endif } .padding(10) #if os(iOS) .background { Capsule() } #endif NavigationLink("Continue") { } } .padding()
Replies
0
Boosts
0
Views
740
Activity
Oct ’24
Dots on my screen after iOS 18 beta updates
Hi Apple. I got some 3-4 dots appearing on extreme left and right side of the screen of my ipad after iOS 18 beta update. I need some help
Topic: Design SubTopic: General
Replies
0
Boosts
0
Views
644
Activity
Sep ’24
Choice for a classic control panel design
Is it just me or I prefer the old box shaped control icons on my control panel, I would be happy if developers would notice my feedback and I wish them to implement a settings that would allow to change the icons to be changed into box or circle.
Replies
0
Boosts
0
Views
532
Activity
Sep ’24
Animated Splash Screen
How do I go about putting an already animated logo, onto my splash screen? For more context, I used VistaCreate in order to make an app logo, along with an animation for the splash screen. Is there a way to use that animation on a splash screen?
Replies
0
Boosts
0
Views
777
Activity
Sep ’22