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

Build Error
While build now I receive this error help me to resolve it Showing Recent Errors Only Prepare build error: Multiple commands produce '/Users/mayankjain/Library/Developer/Xcode/DerivedData/PCS_EmpApp-chsylqbxjptobeawzzckymqzagvr/Build/Products/Debug-iphonesimulator/PCS_EmpApp.app/Info.plist' note: Target 'PCS_EmpApp' (project 'PCS_EmpApp') has copy command from '/Users/mayankjain/Documents/05-NOV-2025-SWETA_IOS/PCS_EmpApp/PCS_EmpApp/xcode-out/Platforms/iOS/Info.plist' to '/Users/mayankjain/Library/Developer/Xcode/DerivedData/PCS_EmpApp-chsylqbxjptobeawzzckymqzagvr/Build/Products/Debug-iphonesimulator/PCS_EmpApp.app/Info.plist' note: Target 'PCS_EmpApp' (project 'PCS_EmpApp') has process command with output '/Users/mayankjain/Library/Developer/Xcode/DerivedData/PCS_EmpApp-chsylqbxjptobeawzzckymqzagvr/Build/Products/Debug-iphonesimulator/PCS_EmpApp.app/Info.plist' Multiple commands produce '/Users/mayankjain/Library/Developer/Xcode/DerivedData/PCS_EmpApp-chsylqbxjptobeawzzckymqzagvr/Build/Products/Debug-iphonesimulator/PCS_EmpApp.app/Info.plist'
Topic: Design SubTopic: General
0
1
675
Nov ’25
Xcode 26 Issue with functional of bridging header in Xcode project with both objective-c and swift
I'm in the process of add some swift code that is all objective-c. I have trouble with my actual app so I have worked on a prototype. There is what I have done Created a new Xcode project, selecting App and Objc Added a blank Swift file and accepted the generation of the -Bridging-Header. In project build setting, Yes for Defines Modules, Yes for Always Embed Swift Libraries Add appropriate .h file to Bridging header In Build Settings, in Swift Compiler - General, Bridging Header has correct path to the bridging header file Setup the single swift file in this was using @objc like this: @objcmembers class MySwiftClass: NSObject { func myMethod() { let output = ... } } When the project runs I execute in the objc ViewController: MySwiftClass *swiftObject = [[MySwiftClass alloc] init]; and get Use of undeclared identifier 'MySwiftClass'
Topic: Design SubTopic: General
0
1
358
Oct ’25
iOS 26 UIBarButtonItem badge
I'm using the new badge feature for UIBarButtonItem, but it's not working properly for me when transitioning between view controllers. I have two view controller with various right bar button items. In the first view controller the first button (the one with the bell) has a badge with a numeric count. The second view controller has the same button but in the third position. When I push the second view controller, it seems that the badge maintains also the old position, so I see two buttons with badges instead of one. What can I do to fix this?
Topic: Design SubTopic: General Tags:
0
1
759
Sep ’25
Liquid Glass Navigation Bar
The system provided liquid glass background looks terrible with my companies navigation bar background color. The navigation background color is not up for discussion and cannot be changed. The clear liquid glass style looks great and I can apply that to buttons I add to the navigation bar, but that doesn't effect the system provided back button. I would prefer to maintain the default back button functionality. Please make it possible to set the liquid glass style that the system provides for navigation bar items.
Topic: Design SubTopic: General
0
1
974
Oct ’25
CarPlay navigation issue, maximum depth
Hi everyone, I am working on a CarPlay integration, and need open a two level list opened from a root template. However, I am always receiving an error message when opening the 2nd pushed template. To narrow it down not to have an issue with some app specific code I created the CarPlay scene below. I am aware that there is a limit, but two levels I understand are supported on all CarPlay integrations, the maximum seems to be 5. The app is just crashing right after showing the 2nd template. Any ideas? Any hints are much appreciated. Thanks a lot! Regards, Michael class CarPlaySceneDelegate2: UIResponder, CPTemplateApplicationSceneDelegate { // [...] private func createRootTemplate() -> CPListTemplate { let pushToAItem = CPListItem(text: "Push to Template A", detailText: "Level 1 → Level 2") pushToAItem.handler = {[weak self] (pushToAItem, completion) in guard let self = self else { completion() return } self.interfaceController?.pushTemplate( self.pushTemplateA(), animated: true, completion: { (didPresent, error) in completion() } ) } let section = CPListSection(items: [pushToAItem]) let template = CPListTemplate(title: "Root Template", sections: [section]) return template } private func pushTemplateA() -> CPListTemplate { let pushToBItem = CPListItem(text: "Push to Template B", detailText: "Level 2 → Level 3") pushToBItem.handler = {[weak self] (pushToBItem, completion) in guard let self = self else { completion() return } self.interfaceController?.pushTemplate( self.pushTemplateB(), animated: true, completion: { (didPresent, error) in completion() } ) } let backToRootItem = CPListItem(text: "Pop to Root", detailText: "Go back to root") backToRootItem.handler = { [weak self] _, completion in self?.interfaceController?.popToRootTemplate(animated: true, completion: nil) completion(); } let infoItem = CPListItem(text: "Current Depth", detailText: "2 (Template A)") let stackCountItem = CPListItem( text: "Stack Count", detailText: "\((interfaceController?.templates.count ?? 0) + 1)" ) let section = CPListSection(items: [pushToBItem, backToRootItem, infoItem, stackCountItem]) let template = CPListTemplate(title: "Template A", sections: [section]) return template } private func pushTemplateB() -> CPListTemplate { let pushToCItem = CPListItem(text: "Push to Template C", detailText: "Level 3 → Level 4") pushToCItem.handler = {[weak self] (pushToCItem, completion) in guard let self = self else { completion() return } self.interfaceController?.pushTemplate( self.pushTemplateC(), animated: true, completion: { (didPresent, error) in completion() } ) } let backToRootItem = CPListItem(text: "Pop to Root", detailText: "Go back to root") backToRootItem.handler = { [weak self] _, completion in self?.interfaceController?.popToRootTemplate(animated: true, completion: nil) completion() } let popOneItem = CPListItem(text: "Pop One", detailText: "Go back to Template A") popOneItem.handler = { [weak self] _, completion in self?.interfaceController?.popTemplate(animated: true, completion: nil) completion() } let infoItem = CPListItem(text: "Current Depth", detailText: "3 (Template B)") let stackCountItem = CPListItem( text: "Stack Count", detailText: "\((interfaceController?.templates.count ?? 0) + 1)" ) let section = CPListSection(items: [pushToCItem, popOneItem, backToRootItem, infoItem, stackCountItem]) let template = CPListTemplate(title: "Template B", sections: [section]) return template } private func pushTemplateC() -> CPListTemplate { let backToRootItem = CPListItem(text: "Pop to Root", detailText: "Go back to root") backToRootItem.handler = { [weak self] _, completion in self?.interfaceController?.popToRootTemplate(animated: true, completion: nil) completion() } let popOneItem = CPListItem(text: "Pop One", detailText: "Go back to Template B") popOneItem.handler = { [weak self] _, completion in self?.interfaceController?.popTemplate(animated: true, completion: nil) completion() } let infoItem = CPListItem(text: "Current Depth", detailText: "4 (Template C)") let stackCountItem = CPListItem( text: "Stack Count", detailText: "\((interfaceController?.templates.count ?? 0) + 1)" ) let section = CPListSection(items: [popOneItem, backToRootItem, infoItem, stackCountItem]) let template = CPListTemplate(title: "Template C", sections: [section]) return template } }
2
0
1.6k
2w
Suggestion: Add App Notification Filter Slider to Notification Center
Add slim horizontal bar at the top of the Notification Center that displays the apps with current notifications, along with a badge showing the number of notifications for each app. Each app icon is clickable, allowing users to filter the Notification Center and view only the notifications from the selected app. The first button in the slider should be “All” to show all notifications, followed by app icons (Excluding notifications summary) This bar Appears only when notifications are from more than one app. Hidden if there’s only one app in Notification Center (no need to filter). Benefits: Better organization: Helps users quickly identify which apps have unread notifications. Reduced distraction: Allows focusing on notifications from one app at a time. Easier navigation: Especially helpful when notifications from multiple apps are mixed together by time. Faster interaction: Saves time by letting users jump directly to the relevant group of grouped or multiple notifications.
Topic: Design SubTopic: General
0
1
70
Jun ’25
Greyed out app icon on iOS 26 beta
On iOS 26 beta 3, my app and some other apps got greyed out app icon. It only happens in Default (Light) appearance. Apple automatically converts third-party app icons to support Liquid Glass, but is there any specific requirement with third-party icons to avoid above greyed out app icon issue?
0
1
621
Jan ’26
Should we design for Liquid Glass on visionOS?
Liquid Glass was introduced as a universal design language for all platforms, but isn't supported by visionOS 26 beta. For a small team creating a visionOS app targeted for release in fall 2026, should we focus our design work on Liquid Glass, or for the existing visionOS design language?
Topic: Design SubTopic: General Tags:
1
1
250
Jun ’25
Question about the platform parameter in device registration
https://developer.apple.com/documentation/appstoreconnectapi/devicecreaterequest/data-data.dictionary/attributes-data.dictionary According to the API documentation above, the parameter values for platform can be three: IOS, MAC-OS, and UNIVERSAL. After debugging, it was found that IOS and MAC-OS can be used normally, but UNIVERSAL encountered an error UNIVERSAL' is not a valid value for the attribute 'platform'. Expected one of: 'IOS', 'MAC_OS', I would like to know if this value has been deprecated or if the API interface requires new version support, and how to use this value! Please help me solve it! thank you!
Topic: Design SubTopic: General
0
1
327
Aug ’25
WebView some of fonts became too small on ios 18.4 and on latest safari
Below is the sample css code where I render a web page in my webview screens fonts became too small after 18.4 and its so hard to read when I launch my app . Any workarounds to address this issue .sg-labels-canvas { font-size: 15px; display: flex; flex-direction: column; font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Roboto, sans-serif; font-style: normal; }
Topic: Design SubTopic: General
1
0
100
Apr ’25
Spam 4.3 (a)
Hello everyone, I’ve reached out to Apple’s review team multiple times, but unfortunately, I haven’t received any clear or specific guidance on why my app was rejected. My app has been rejected several times with the reason “Spam” under guideline 4.3, and I still don't understand exactly which part of the app is problematic. Even after providing the necessary information about the data, I resubmitted the app, and after a few days, it quickly moved into "In Review" status, but then was rejected within seconds with the same “Spam” message. I have sent over 13 messages asking for specific feedback, and all I get are vague responses saying “It’s spam, refer to 4.3, fix your app, and resubmit.” However, when I review the guidelines, I don’t see any specific reasons for rejection that apply to my app. I’m particularly confused because my app is a VPN, and when I check the guidelines, I see that apps in categories like dating and others are saturated, but VPN apps are not. My app uses completely dedicated servers, and the IP addresses are not found in any other apps. Still, my app keeps getting rejected. If anyone has encountered a similar issue or has any insight into what might be causing this, I would greatly appreciate it if you could provide detailed guidance on what specifically needs to be changed to get the app approved. Thank you!
Topic: Design SubTopic: General
1
0
870
Mar ’25
Urgent Feature Request: Auto-Hide Home Bar in iOS 18.x Based on iOS 26 Beta Experience
Hello Apple Engineering Team and Fellow Developers, I’ve been using iOS 26 beta from day one and closely following all its improvements. One feature that significantly enhances the user experience is the automatic hiding of the Home Bar (the bottom navigation indicator) after a few seconds of inactivity in menus and apps. This subtle but powerful UI behavior not only increases immersion but also reduces distractions, making navigation smoother and visually cleaner. I strongly urge the Apple team to integrate this feature into the upcoming iOS 18.6 update. Bringing this polished interaction to iOS 18 users would greatly improve usability and keep the interface modern and elegant. Thank you for your continuous efforts in refining iOS. Looking forward to seeing this improvement officially adopted soon! Best regards, [ERFANEX]
Topic: Design SubTopic: General
3
0
575
Jul ’25
Plagiarism
Hello. I've made a shape in the app which looks like the hello sign on apple products at startup. Is this considered plagiarism, or is it acceptable to use it in an app? P.s: i've used Path for it and drawed it with curves
2
0
724
Feb ’25
CPContactTemplate does not display buttons iOS26
I'm trying to display CPButtons (CPContactCallButton, CPContactMessageButton) in CPContactTemplate. They are displayed using device with iOS16, but with iOS26 device CPContactTemplate only displays contact image and contact name. No buttons. Is it a bug? I don't have iOS17/18 devices to try.
Topic: Design SubTopic: General Tags:
3
0
252
2d
Repost : Analog Clock on lock screen
When we are going to have a real analog clock option on the lock screen. If an apple watch can do it surely its not that difficult. For someone who uses a clock to tell what time it isn't as opposed to what time it is, i’m constantly having to convert a digital image where the image of hands on a dial is so much easier. Surely this isnt because someone has forgotten how to read a clock
Topic: Design SubTopic: General
1
0
111
Apr ’25