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.

Post

Replies

Boosts

Views

Activity

Live activities on watchOS not working on simulator
Is there a trick to getting the new Live Activities on Apple Watch working via the simulator? I have an iPhone paired to a watch simulator, but live activities created on the phone aren't appearing on the watch Smart Stack. It looks like maybe the Smart Stack isn't functional on the watch simulator, as there are a bunch of blank tiles where the Smart Stack should be.
3
5
639
Jul ’24
Drawing rectangles on Layer upon object detection
Hey, I am natively an ML Engineer so not really well versed in swift. I am currently trying to use a model of mine in a swift app. The model detects knives and has an input size of 640x640. i have set up AV capture and that works well I can just see the camera on my screen. I have also set up the coreML model and it also works and detects the objects. so what doesnt work is the way I draw boxes around the object. e.g. the objects box params are Raw model output: x=342.25, y=293.0, w=105.375, h=150.5 when Im in the middle of the screen. seems ok for me, I want to draw a box now with these params. But the CGRect object is really weird to me, firstly the x value is the y value in the box (i notice this because when I move the object up and down , the x val will change but not the y val). then if I just switch the values, the drawn box will move ok in the y direction but mirrored in the x direction. what things need to be considered/changed here, is it something about the layer setup? See my implementation here: func setupLayers() { previewLayer = AVCaptureVideoPreviewLayer(session: session) previewLayer.videoGravity = AVLayerVideoGravity.resizeAspectFill rootLayer = previewView.layer previewLayer.frame = rootLayer.bounds rootLayer.addSublayer(previewLayer) inferenceTimeBounds = CGRect(x: rootLayer.frame.midX-75, y: rootLayer.frame.maxY-70, width: 150, height: 17) inferenceTimeLayer = createRectLayer(inferenceTimeBounds, [1,1,1,1]) inferenceTimeLayer.cornerRadius = 7 rootLayer.addSublayer(inferenceTimeLayer) detectionLayer = CALayer() detectionLayer.frame = rootLayer.bounds detectionLayer.position = CGPoint(x: rootLayer.bounds.midX, y: rootLayer.bounds.midY) rootLayer.addSublayer(detectionLayer) }
0
0
215
Jul ’24
New iOS 18 UIView animation methods not available yet?
On the WWDC24 session video 'Enhance your UI animations and transitions', Appls shows these new animation methods for UIKIT: switch gesture.state { case .changed: UIView. animate(.interactiveSpring) { bead.center = gesture.translation } case .ended: UIView. animate(spring) { bead.center = endOfBracelet } } As of iOS 18 Beta 2, I get an error for `UIView. animate(.interactiveSpring)` These new methods are not available yet?
0
0
496
Jul ’24
iOS 18 Beta 2 XCTest: Unable to record and play contacts permission system dialog
Unable to record and play the new contacts permission system dialog. App: https://developer.apple.com/documentation/contacts/accessing-a-person-s-contact-data-using-contacts-and-contactsui func handleContactsAccessAlert() { let springboard = XCUIApplication(bundleIdentifier: "com.apple.springboard") let allowButton = springboard.buttons["Allow Full Access"] allowButton.tap() let access6ContactsButton = springboard.alerts["Allow full access to 6 contacts?"].scrollViews.otherElements.buttons["Allow"] access6ContactsButton.tap() } func handleContactsPermissionAlert() { let springboard = XCUIApplication(bundleIdentifier: "com.apple.springboard") let allowButton = springboard.buttons["Continue"] if allowButton.exists { allowButton.tap() sleep(5) handleContactsAccessAlert() } } func testContactPermissions() { let app = XCUIApplication() app.launch() app.buttons["Request Access"].tap() sleep(5) handleContactsPermissionAlert() sleep(5) app.collectionViews/*@START_MENU_TOKEN@*/.staticTexts["Kate Bell"]/*[[".cells.staticTexts[\"Kate Bell\"]",".staticTexts[\"Kate Bell\"]"],[[[-1,1],[-1,0]]],[0]]@END_MENU_TOKEN@*/.tap() }
3
1
709
Jul ’24
AttributedString (without NS prefix) and Genmoji
My app uses AttributedString for both text formatting and storage using MarkdownDecodableAttributedStringKey. The new API for Genmoji looks very interesting but I don't see an AttributeScope for it. Is it possible to work around this and stick with AttributedString, am I in the wrong room or should I send in an enhancement request via Feedback Assistant? Thanks a lot for your time!
2
0
534
Jul ’24
SwiftData fatal error "Never access a full future backing data"
My app started crashing a ton with Xcode 16 beta 1 / iOS 18 because of "Thread 1: Fatal error: Never access a full future backing data". I was hoping this would be resolved with beta 2, but unfortunately this is not the case. I'm having a tough time reproducing this bug in a small sample project – I'd appreciate any hints as to what might be causing this. Full error: Thread 1: Fatal error: Never access a full future backing data - PersistentIdentifier(id: SwiftData.PersistentIdentifier.ID(url: x-coredata://10A5A93C-DC7F-40F3-92DB-F4125E1C7A73/MyType/p2), implementation: SwiftData.PersistentIdentifierImplementation) with Optional(3BF44A2D-256B-4C40-AF40-9B7518FD9FE6)
7
7
1.1k
Jun ’24
White text on white background
Whenever I make a new app I end up getting bug reports from people who say they can't see text, or they can just about see white text against an almost white background. It always turns out to be because their phone is in dark mode, which I don't use. Almost all of my views have the background color set to "System background color" which is the default value when you create a view. Why does dark mode change the color of the text but not the background?
1
0
490
Jun ’24
UI Binding Issue with Consecutive Modal Prompts on Latest iOS Versions
Hi team, Currently, I am using two Modal prompts consecutively to display force update popups based on a condition. However, there's an issue where the UI thread is occasionally not binding properly after dismissing the first prompt. Please ensure that after dismissing the first prompt, the second prompt is not bound. After reviewing everything, I understand this is an iOS core library binding issue and it's occurring from the latest iOS version onwards. Could you please provide me with a solution to resolve this issue? Thank you!
0
1
491
Jun ’24
iPhone and iPad Collaboration
Hello, I'm building apps for iPhone and iPad. Those are working together like a 2-screen Nintendo switch. Is there any way for communication between iPhone and iPad without an outside server? PAN(personal area network) could be a solution, but I could not find any information to use it for my case. If the iPad is connected to iPhone as a personal hotspot (though there's no cell tower), they should be communicate each other. I think there's a better way for my case. Could anyone can tell me where I start to looking for? Thanks, JJ
1
0
564
Jun ’24
TipKit: explicit vs. implicit iCloud sync
With iOS 18, TipKit got explicit support for syncing tip state via iCloud. However, before that, TipKit already did iCloud syncing implicitly, as far as I know. How does the new explicit syncing relate to the previous mechanism? Do we have to enable iCloud syncing manually now to retain the functionality in iOS 18? Is there a way to sync with the state that was already stored by TipKit in iCloud on iOS 17?
1
0
503
Jun ’24
TextKit2 to PDF WITHOUT Font embedding
I can render text from TextKit2 into a PDF everything is fine. But in this case the font is embedded into the PDF. I need the Pdf to contains only the paths / glyphs and not font. I can't find a solution yet. I don't want to create an image or using UIViews etc. It would be nice to get the bezier path of the text I have done this with TextKit1 but the glyphs are gone with TextKit2 Can anyone help me ? Thanks :)
0
0
468
Jun ’24
Disabling screenshot and screen recording capabilities on users' devices
Hello, We represent an AI-powered content monetization platform. Recently, we encountered challenges during the approval process for our app on the Apple platform. Specifically, our efforts to disable screenshot and screen recording features within the app were unsuccessful. Consequently, sensitive content uploaded by content creators on our platform has been vulnerable to unauthorized distribution by users, negatively impacting our business model. We've observed that platforms like WhatsApp have successfully implemented features to prevent screenshots in view-once messages, prompting us to seek guidance on potential solutions or best practices to safeguard content creators' copyrights by disabling screenshot and screen recording capabilities on users' devices. We appreciate any insights or recommendations you can provide to address this issue effectively. Thank you for your attention to this matter. We eagerly await your response.
0
0
300
Jun ’24
PHP doesn't show images in WKWebView
Since httpRequest body is ignored on WKWebView, I am trying to display a php page by fetching the data first, and displaying it. func fetchData() { URLSession.shared.dataTask(with: request) {(data, response, error) in guard let data, let url = request.url else { return } // pass the result to WKWebView }.resume() } import Foundation import SwiftUI import WebKit struct CustomWebView: UIViewRepresentable { var url: URL var data: Data func makeUIView(context: Context) -> UIView { return CustomUIWebView(url: url, data: data) } } class CustomUIWebView: UIView { let webView: WKWebView init(url: URL,data:Data) { let webConfiguration = WKWebViewConfiguration() webView = WKWebView(frame: .zero, configuration: webConfiguration) super.init(frame: .zero) webView.load(data, mimeType: "text/html", characterEncodingName: "utf-8", baseURL: url) addSubview(webView) } required init?(coder: NSCoder) { fatalError("init(coder:) has not been implemented") } override func layoutSubviews() { super.layoutSubviews() webView.frame = bounds } The data contains the page that display several images, but it doesn't display any of the images in WKWebView. Test and other components (such as checkmark button) have no problem, only images do. Also, I confirmed it works fine on Safari. So what is the issue here? What am I doing wrong?
0
0
329
Jun ’24
Appropriate framework?
I'm a hobbiest just starting to develop an app for MacOS only, so Swift, SwiftUI, Cocoa, UIKit are all very new - I do have a background in C/C++ and various assembly languages but GUI based apps are new and feeling like a challenge. So far, I understand SwiftUI to be the latest framework and thus, in time, it's expected to superceed Cocoa and UIKit. The app I intend to develop will be a remote console for a piece of equipment connected via a serial interface. My intention is to recreate the front panel of the equipment as best I can in the app so it retains the same look and 'feel' as the equipment itself. To accomplish this it will be necessary to place buttons, labels and other textual info in fixed locations within a window. If the window is resized I don't want to reflow its content. With my minimal experience of xcode this seems straightforward using cocoa but I'm stuggling to achieve anything comparable with SwiftUI. I'm keen to avoid spending lots of time learing one framework only to find-out it's not appropriate for the type of app I wish to develop. Guidance on framework selection would be much appreciated. Thanks, Andrew
1
0
276
Jun ’24