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

Post

Replies

Boosts

Views

Activity

Sheet Presentation
Hi, would appreciate based on my implementation how can I control the dimmed effect of sheet presentation on iOS 17 later. Here is my sample implementation: struct ContentView: View { @State private var present = true var body: some View { VStack { Image(systemName: "globe") .imageScale(.large) .foregroundStyle(.tint) Text("Hello, world!") } .padding() .sheet(isPresented: $present, content: { ContentView2() .modifier( SheetModifier( dismissDisabled: true, detents: [.medium, .large], dragIndicator: .hidden ) ) }) } } #Preview { ContentView() } struct SheetModifier: ViewModifier { var dismissDisabled: Bool var detents: Set<PresentationDetent> var backgroundInteraction: PresentationBackgroundInteraction var dragIndicator: Visibility var cornerRadius: CGFloat init( dismissDisabled: Bool = false, detents: Set<PresentationDetent>, backgroundInteraction: PresentationBackgroundInteraction = .automatic, dragIndicator: Visibility = .automatic, cornerRadius: CGFloat = 20 ) { self.dismissDisabled = dismissDisabled self.detents = detents self.backgroundInteraction = backgroundInteraction self.dragIndicator = dragIndicator self.cornerRadius = cornerRadius } func body(content: Content) -> some View { content .background(.clear) .interactiveDismissDisabled(dismissDisabled) .presentationDetents(detents) .presentationBackgroundInteraction(backgroundInteraction) .presentationDragIndicator(dragIndicator) .presentationCornerRadius(cornerRadius) } }
0
0
450
Jun ’24
Dock issues in multiple screens after Sequoia update.
Hi there, I updated my MacBook Pro M2 to Sequoia today, and the dock does not move from one screen to another anymore. My work setup involves four screens, including my MacBook, which is now experiencing this dock issue. Also, I would love to display the dock on all monitors if possible.
17
19
2k
Jun ’24
Apple Maps Pins in Custom Map
I have been developing an app that includes some pinned locations. These are displayed on a map, and currently have the standard pins and SF Symbol pins. A few of the locations have a special symbol on Apple Maps, but the same symbol is not avalable in SF Symbols. I was wondering if it is possible to use the pins, other than the standard red, from Apple Maps.
0
0
480
Jun ’24
SF Symbol License
Hi all, I am a UI/UX designer working on several commercial projects, and I have a few questions that I need you to answer: Can I use the icons from your SF Symbols set in my application? This is a SAAS application and is used on various platforms such as macOS and Windows. Is SF Symbols only allowed for use in applications running on Apple platforms? Meaning, if my application is used on a MacBook or iPhone, am I allowed to use your icon set? If usage is not permitted on platforms other than Apple’s, how can I legally use them on those platforms? Does Apple sell licenses for using SF Symbols on other platforms? If so, what is the cost? Looking forward to your response.
1
0
820
Jun ’24
Carplay CPTabBarTemplate custom icons
Hello, I am a product designer trying to understand the UI design limitations of CarPlay. I am designing a scene where a CPTabBarTemplate will appear. From what I can read in the CarPlay development documentation, I understand that it should be possible to assign a custom icon for each tab with tabImage: UIImage?, if I am not mistaken. However, any reference I have found always uses SF Symbols, which makes me wonder if they can actually be customized. And on the other hand, if they are customizable, could any PNG be used for the tab that might compromise the driver's safety? Thank you in advance.
1
0
649
Jun ’24
Carplay Developer Documentation with examples
Hello, I am a product designer trying to understand the UI design limitations of CarPlay. Since CarPlay renders templates in a single way and there isn't any option to change any component, is there any way to see in the documentation how that component will look once rendered? For example, if I want to incorporate a primaryButton: CPTextButton? in my CPPointOfInterest. How could I know how each CPTextButtonStyle will be displayed? Is there an accessible place where I can check how each component will be visualized? Thank you in advance.
0
0
502
Jun ’24
iOS 18 (iPhone 15)
Hello there. I want to reporting about bug at iOS 18. Some feature doest not working like notification from aplication, and picture pagination is bad to see in apple music, and last the keyboard too. Please fixed it.
1
2
763
Jun ’24
Carplay Design Resources
Hello, I am a product designer and I am currently working on a project that incorporates functionalities in CarPlay. Given the UI limitations that exist for app development with CarPlay, are there any pre-designed templates in Figma or any other resources that can be used to design the screens? This way, I can adhere to those templates knowing what the limits are. Thank you very much for your attention.
2
1
912
Jun ’24
SF Symbol
I am trying to find the following icon. I have gone through all the icons in SF Symbols 5.1 but have been unable to locate it. Does anyone know what this icon is or how I can get it?
3
0
970
May ’24
Mac OS 15 Beta iPhone mirroring
there is suppose to be a special feature to run your iPhone on the MAC desktop. However the apps that is suppose to be in the dock as an icon doesn't seem to exist. Looks so easy in the keynote video. Any one else having solved this thank you
8
1
2.5k
Jun ’24
Guideline 4.1 - Design - Copycats change to Guideline 4.3(a) - Design - Spam
Regarding 4.1, I deleted the ranking and text of the title according to your instructions and submitted it. It turned into 4.3(a) spam. How should I deal with it? Why did it become 4.3? The following is the information given by the 2nd review team Hello, Thank you for your resubmission. Upon further review, we identified additional issues that need your attention. See below for more information. If you have any questions, we are here to help. Reply to this message in App Store Connect and let us know. Review Environment Submission ID: fd44c6b9-ff2d-4ee5-bf5c-c1ede1a5b6b4 Review date: June 10, 2024 Version reviewed: 1.0.0 Guideline 4.1 - Design - Copycats The app or its metadata appears to contain potentially misleading references to third-party content. Specifically, the app includes content that resembles one or multiple third-party sports teams and/or leagues without the necessary authorization. Next Steps If you have the necessary rights to distribute an app with this third-party content, attach documentary evidence in the App Review Information section in App Store Connect and reply to this message. If you do not have the necessary rights to the third-party content, It would be appropriate to revise the app and metadata to remove the third-party content before resubmitting for review. Resources Learn more about requirements to prevent apps from impersonating other apps or services in guideline 4.1. Support Reply to this message in your preferred language if you need assistance. If you need additional support, use the Contact Us module. Consult with fellow developers and Apple engineers on the Apple Developer Forums. Help improve the review process or identify a need for clarity in our policies by suggesting guideline changes. Hello, Thank you for your resubmission. Upon further review, we identified additional issues that need your attention. See below for more information. If you have any questions, we are here to help. Reply to this message in App Store Connect and let us know. Review Environment Submission ID: c42965ab-9565-4dc1-ab9b-a83ad7f17f7a Review date: June 11, 2024 Version reviewed: 1.0.0 Guideline 4.3(a) - Design - Spam We noticed your app shares a similar binary, metadata, and/or concept as apps submitted to the App Store by other developers, with only minor differences. Submitting similar or repackaged apps is a form of spam that creates clutter and makes it difficult for users to discover new apps. Next Steps Since we do not accept spam apps on the App Store, we encourage you to review your app concept and submit a unique app with distinct content and functionality. Resources Some factors that contribute to a spam rejection may include: Submitting an app with the same source code or assets as other apps already submitted to the App Store Creating and submitting multiple similar apps using a repackaged app template Purchasing an app template with problematic code from a third party Submitting several similar apps across multiple accounts Learn more about our requirements to prevent spam in App Review Guideline 4.3(a). Support Reply to this message in your preferred language if you need assistance. If you need additional support, use the Contact Us module. Consult with fellow developers and Apple engineers on the Apple Developer Forums. Help improve the review process or identify a need for clarity in our policies by suggesting guideline changes
1
0
761
Jun ’24
landscape support
I heard someone say recently that not supporting landscape on iPhone could be an accessibility problem for some folks. Right now I've got an SwiftUI app were lots of things break when I go to landscape mode. Is there a good resource to learn how to animate layouts around to support landscape when there's no way it will fit with the default twist?
1
1
413
Jun ’24
Unwind segue to "unwindFirstSegueFor:towards"
Unwind segue to "unwindFirstSegueFor:towards" previously worked in Simulator. It no longer works in version: Xcode 14.2, macOS Monterey 12.5, iOS 16.2. Crashes Simulator iPhone 14 Pro Max with error Thread 1: EXC_BAD_ACCESS (code=1, address=0x100200) in appDelegate. What has changed? How do I fix it?
1
0
435
Jun ’24
AudioOutputUnitStart failed with OSStatus error -50
Let the device is in locked screen Get incoming APNS video request to start video recording we are reporting this APNS to Callkit Accept incoming APNS request We are trying to initialise audio unit. Initialisation is success but starting is failing. Note - This issue is reproduced only if we receive video pull request in locked screen, after accepting callkit call we should not unlock the phone. If we unlock phone everything works as expected.
0
0
474
Jun ’24
Adding fonts to 'Fonts provided by application' in info.plist Xcode 14.2
I have tried to add multiple fonts (ttf and otf) to 'Fonts provided by application' key. As soon as I navigate away from the 'Info' tab the 'Fonts provided by application' key disappears. Also, the fonts never show up in the console list. I have added them to the OS (Monterey) and the XCode project. I have repeatedly followed the instructions and been sure to follow the instructions to the letter. All fonts have been spelled correctly and the file extensions used where and when needed in the project. I am lost to understand this. Why would the 'Fonts provided by application' key disappear?
4
0
963
Jun ’24
Unable to add fonts to XCode project
Added fonts to MAC and added to Xcode project but fonts are not available in project. Fonts are listed in the Copy Bundle Resources. Fonts are added to Fonts provided by application (Listing dissapears whenever I leave the 'Info' page. Font spelling is correct and double checked. Fonts are listed in project navigator. Fonts do not show up when the lists runs in the console. This same scenario to place when trying to add a different fonst as well. Your help would be appreciated.
0
0
538
May ’24
Vision Pro Anaglyph swiping
Need to swipe 3D images in an app. This the code, but errors crop up. // // ContentView.swift // Retro3DComics // // Created by Bob Schoenburg on 5/24/24. // import SwiftUI import RealityKit import RealityKitContent struct ContentView: View { @State private var error: Error? @State private var isErrorPresented = false @State private var rzja = "" @State private var selectedImage: Int = 0 let jaimages = ["ja1", "ja2", "ja3"] var body: some View { TabView(selection: $selectedImage) { RealityView { content in do { for rzja in jaimages { ForEach(Array(zip(0..., jaimages)), id: \.0) { index, image in Image(image) .resizable() .aspectRatio(contentMode: .fit) .animation(.smooth(duration: 0.5), value: Image(image)) // .tag(index) var anaglyphMaterial = try await ShaderGraphMaterial(named: "/AnaglyphMaterial", from: "Scene.usda", in: realityKitContentBundle) let textureResource = try await TextureResource(contentsOf: Bundle.main.url(forResource: rzja, withExtension: "jpeg")!) try anaglyphMaterial.setParameter(name: "inputImage", value: .textureResource(textureResource)) let entity = Entity() let model = ModelComponent(mesh: .generatePlane(width: 0.5, height: 0.3), materials: [anaglyphMaterial]) entity.components.set(model) content.add(entity) } } // .tabViewStyle(.page) .gesture(DragGesture(minimumDistance: 3.0, coordinateSpace: .local) .onEnded { value in print(value.translation) switch(value.translation.width, value.translation.height) { case (...0, -30...30): withAnimation { selectedImage += 1 if selectedImage > jaimages.count - 1 { selectedImage = 0 } } case (0..., -30...30): withAnimation { selectedImage -= 1 if selectedImage < 0 { selectedImage = jaimages.count - 1 } } case (-100...100, ...0): print("up swipe") case (-100...100, 0...): print("down swipe") default: print("default") } } ) } } //#Preview(windowStyle: .automatic) { // ContentView() //} } } } Candidate has partially matching parameter list ([(PartialRangeFrom.Element, String)], id: KeyPath<(PartialRangeFrom.Element, String), Int>, content: @escaping ((PartialRangeFrom.Element, String)) -> _)
0
0
552
May ’24