Search results for

A Summary of the WWDC25 Group Lab

10,094 results found

Post

Replies

Boosts

Views

Activity

Reply to Mitigating overlapping text for sticky section headers for a plain List in iOS 26
Is there a modifier to make section headers non-sticky? You can use the automatic .listStyle(.automatic) or opt for a lazy stack instead and apply your decorators. For examples, refer to Grouping data with lazy stack views. .listStyle(.automatic) results in in .insetGrouped, so that's a different look. I tried the LazyVStack approach and this worked well for a screen that was pretty custom-styled anyway. Side note: LazyVStack made me a little upset by applying the spacing not only between rows, but also after the section header; requiring dancing around with the spacing and paddings to get the correct look; I wished for a separation of spacing between sections, spacing between rows and spacing between [section header/rows/section footer]. But I'm wondering if this is a well-rounded approach for Views that just want a plain styled data list. It's certainly more feasible with the delicate separators-going-all-the-way-through-to-the-edge-of-the-screen gone in iOS 26, but still, custom-rebuilding all the
Topic: UI Frameworks SubTopic: SwiftUI
Aug ’25
Reply to How to customize UIActivityViewController
The API highlighted by @RickMaddy is one of the only choices, in addition to the newer excludedActivitySectionTypes property. It's worth though taking a step back and looking at your core premises: We are currently developing an enterprise iOS application and are in the process of implementing Data Leakage Protection (DLP) features. In broad terms, an app generally does not have the right level of visibility to understand the mix of user intention and corporate data policies. An app is not an island, and may be only one of several apps to get specific work tasks done. That's why the right thing here is that the device needs to be managed by the enterprise through MDM, so there's a higher level view of what the enterprise intends to allow and disallow through its chosen policies. There's a chain of trust to this — if an enterprise doesn't trust the device by managing it at the device level, then why should it trust a potentially unknown device with an unmanaged app with its sensitive enterprise data? There is
Topic: UI Frameworks SubTopic: UIKit Tags:
Aug ’25
Reply to Mitigating overlapping text for sticky section headers for a plain List in iOS 26
Is there a modifier to make section headers non-sticky? You can use the automatic listStyle .listStyle(.automatic) or opt for a lazy stack instead and apply your decorators. For examples, refer to Grouping data with lazy stack views. Is there a way to get a blurry material behind the section headers when they are sticking to the top bar? You can provide a background for your section header. However you can't provide a material for the scrollEdgeEffectStyle apart from either hard or soft ScrollEdgeEffectStyle. Can you give safeAreaBar(edge:alignment:spacing:content:) a try and disable the scroll edge effect using scrollEdgeEffectHidden. That would allow you provide a view as a custom bar.
Topic: UI Frameworks SubTopic: SwiftUI
Jul ’25
Replacing the Preferences item in a menu bar
Per default the menu bar on iPad includes an application menu named after your app which includes a Preferences action. That one opens the Settings app to your app settings page. I do not really populate that with options and instead have my own settings UI accessible in my app using toolbar items. What's the best approach to handle this with the menu bar? I've tried replacing the default Preferences item but that only works if I do not use its shortcut, which I would like to preserve. Another solution would be to append another Settings item for my UI, which would look weird and confusing, but seems to be the recommended way from the HIG. Reserve the YourAppName > Settings menu item for opening your app’s page in iPadOS Settings. If your app includes its own internal preferences area, link to it with a separate menu item beneath Settings in the same group. Place any other custom app-wide configuration options in this section as well. I take it there is no way to replace it then?
Topic: UI Frameworks SubTopic: UIKit Tags:
3
0
128
Jul ’25
Apple SignIn configuration change from Group to Primary ID
I have two applications, and I recently decided to add the Apple Sign In feature. Initially, I configured it for one of the apps as the Primary ID for this feature. Everything worked well, and I decided to add it to the second app. I made a mistake and used the First app as Primary ID using the Group with an existing primary App ID flag. Now, when I sign in using the second app, I don't see it in the list of apps in iPhone Settings for Apple Sign In; I only see the primary app. And with that, I no longer see a prompt for sharing/hiding email, and I am unable to revoke credentials correctly. I decided to change the Second app's Sign-in config and set it as the Primary ID for the feature. I was hoping to get two apps independent for the SignIn. However, it doesn't seem to make a difference. The second app behaves the same way, as long as the first app used SignIn, the second one always thinks that the user has already used that feature and never shows the correct prompt. Is there something I missed aft
0
0
148
Jul ’25
Reply to BlendShapes don’t animate while playing animation in RealityKit
I've only been able to get simultaneous animations playing on a rigged model by using hard-coded FromToByAnimations and ensuring that the animations do not have any collisions in terms of which joints they are animating. Then when using playAnimation, passing a blend layer offset to the each animation group. But I have not tried this approach of using Blend shapes from Blender
Topic: Graphics & Games SubTopic: RealityKit Tags:
Jul ’25
Reply to Using .glassEffect in Charts
Hello! I was able to get a couple of patterns down for glass in charts; some through views and others with chart-specific protocols. here's an example .annotation: extension Charting.Views.Stock.Selection { struct Annotation: View { private let low: Double private let high: Double private let open: Double private let close: Double private let gain: Bool private var time: String public init(_ data: Charting.Model.Candle) { self.low = data.low self.high = data.high self.open = data.open self.close = data.close self.gain = data.gain self.time = data.date.formatted(.dateTime.hour().minute().timeZone(.exemplarLocation)) } @Environment(.colorScheme) private var colors var body: some View { VStack(alignment: .leading) { Group { HStack { Text(Low).font(.caption) Spacer() Text(low, format: .currency(code: USD)) } HStack { Text(High).font(.caption) Spacer() Text(high, format: .currency(code: USD)) } Divider() HStack { Text(Open).font(.caption) Spacer() Text(open, format: .currency(code: USD)) } HStack { Text(C
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Jul ’25
Mitigating overlapping text for sticky section headers for a plain List in iOS 26
When preparing SwiftUI code that uses List with .listStyle(.plain) for iOS 26, the by-default sticky section headers combined with the new translucent top-bars often causes unpleasantly overlapping text: Two questions here: Is there a modifier to make section headers non-sticky? This would be helpful for cases where the translucent bar is a good fit and the section titles don't need to be sticky/pinned. I found .listStyle(.grouped) can be an alternative in some cases, but this adds a gray background / additional padding to the section titles. Is there a way to get a blurry material behind the section headers when they are sticking to the top bar? This would be good for cases where the section header is important content-wise (like in the two-column example above or for a data list categorized using sections that should be always visible as a point of reference) I found the scroll edge effects and .scrollEdgeEffectStyle(.hard, for: .top) does the trick for the top bar but doesn't affect attached stick
Topic: UI Frameworks SubTopic: SwiftUI
5
0
162
Jul ’25
Reply to Signing a daemon with the Endpoint Security entitlement
Thank you! So you are right, I was not starting the daemon, just loading it. I am also able to manually run it, but it required full-disk-access to the Terminal app! We also are creating a FAT binary to run on both Intel and Apple Silicon, so I will test that next. By the way, the examples are seriously lacking in detail - even your example. It took a long time to reproduce simply because there are missing steps. For example, the creating a new application DOES NOT create an Info.plist. That took a while to figure out. Telling someone to delete a key that shows up in that file doesn't really make any sense, particularly when they are not called the same thing in the Info tab in the project settings. Another thing is that once I added the ES code, it would not build because you also need to link the library for it. There were a few other things as well - such as telling me to delete main.storybook, or other things that actually had no extension showing in the project file list. Finally, my main confusion left
Topic: App & System Services SubTopic: Core OS Tags:
Jul ’25
Unexpected Removal of Apple Watch Apps When Using allowListedAppBundleIDs in iOS Configuration Profile
Summary: When applying a configuration profile that uses allowListedAppBundleIDs to permit a defined set of apps, essential Apple Watch apps are unexpectedly removed from the paired Watch — even though their associated iPhone bundle IDs are explicitly included. This issue occurs with a minimal profile, and has been consistently reproducible on the latest versions of iOS and watchOS. Impact: This behavior severely limits the use of Apple Watch in managed environments (e.g., education, family management, accessibility contexts), where allowlisting is a key control mechanism. It also suggests either: Undocumented internal dependencies between iOS and watchOS apps, or A possible regression in how allowlists interact with Watch integration. Steps to Reproduce: Create a configuration profile with a Restrictions payload containing only the allowListedAppBundleIDs key. Allow a broad list of essential system apps, including all known Apple Watch-related bundle IDs: com.apple.NanoAlarm com.apple.NanoNowPlaying
1
0
274
Jul ’25
What to do about the new glass medium detent sheets
So many issues with the new sheet design, I don't think I can ship these. And it's both in UIKit and SwiftUI. Honestly these net sheets seem like a failure from start to finish and I don't believe it will get better for the initial release. Toolbar buttons in medium detent size have very low contrast and look bad with their opaque appearance During the transition from medium to large detent the whole sheet flickers and turns transparent for a split moment, creating a very jarring transition (video here: https://mastodon.social/@nicoreese/114938826906689965). In the large detent the background is always white in light mode making the cells bleed into the background making them indistinguishable from it. I should be able to set a background color for the large detent which smoothly transitions to it. Like: glass in medium and system grouped background in large. Any interaction with the medium detent sheet makes it scale up. Why? It's okay for single interactions but not for when the user taps something
0
0
95
Jul ’25
Reply to Foundation Models Adapter Training Toolkit v0.2.0 LoRA Adapter Incompatible with macOS 26 Beta 4 Base Model
Thank you for responding! metadata.json from the .fmadapter package: { adapterIdentifier: fmadapter-foundation-lab-9799725, author: Foundation Lab, baseModelSignature: 9799725ff8e851184037110b422d891ad3b92ec1, creatorDefined: {}, description: Tool adapter., license: , loraRank: 32, speculativeDecodingDraftTokenCount: 5 } Code used to load the adapter: // From test-adapter-minimal.swift:39 let adapter = try SystemLanguageModel.Adapter(fileURL: adapterURL) // Also tried the name-based initializer: adapter = try await SystemLanguageModel.Adapter(name: adapterName) Please help make progress here. Thank you!
Jul ’25
Reply to WatchOS smart alarm using WKExtendedRuntimeSession
It is as-designed that a watchOS app can only start a new extended runtime session (WKExtendedRuntimeSession) when it runs in the foreground and is active, and that it can only schedule one session at a time. (Note that a frontmost app can run in the foreground, but is not active.) For anything beyond that, I’d suggest that you file a feedback report with your use case. Specific to smart alarms, we introduced AlarmKit in WWDC25, which is available in iOS 26 but can forward the alarm presentation to a paired watch when an alarm occurs. You might take a look if that fits your use case. Best, —— Ziqiao Chen  Worldwide Developer Relations.
Topic: App & System Services SubTopic: General Tags:
Jul ’25