iOS 26/27/Liquid Glass compatibility - #158
Conversation
eschramm
left a comment
There was a problem hiding this comment.
A few minor issues noted. One other very minor issue, not related to the code changes here, is that the tint color of the Done button does not get the proper override tinting because of how it's added to the view. I've made a branch (https://github.com/CareEvolution/ResearchKit/tree/eschramm/os-27-suggestions) that has 3 commits for some ideas on how to tackle these minor issues, including restoring the ability to UI-test the progress bar progress. Thanks for taking this on :smiling
| ]]; | ||
| if (@available(iOS 26.0, *)) { | ||
| _progressView.backgroundColor = [UIColor whiteColor]; | ||
| [NSLayoutConstraint activateConstraints:@[ |
There was a problem hiding this comment.
So there are no vertical constraints on the progressView here leaving placement ambiguous. I think this could present problems. Here are a few edge cases I saw in the CEVRKUITestVehicle. One option is we could give the container a real constant height first, then pin the progress bar to the bottom. I'm not opposed to the current solution, just considering it may pose aesthetic problems in existing surveys without much spacing to top.
|
Thanks for the suggestions, they look good. I pulled them into the PR branch, and was able to restore the original progress view tests in CEVResearchKit (the empty UIView for the navigation title is a clever idea). |
|
Cool - thanks also for the adds. LGTM 👍 |
c662635 to
0629204
Compare


Requires Xcode 27
Various toolbar/button changes to support iOS 26/27 and Liquid Glass (none of these changes appear for devices running iOS 18 or earlier):
Enhancement:
Asking for feedback or contrary opinions on design choices:
Developer testing with Xcode (before this is fully integrated into MyDataHelps)
The easiest way to test is to use the corresponding CEVResearchKit PR, and run the CEVRKUITestVehicle app on a simulator or device. Suggested surveys: ConsentStep, FormStep, FullBattery, ProgressOptions, QuestionStepText, QuestionStepTextAllowMultipleLinesInput. Don't forget to toggle the "version 2" switch to test both versions of ResearchKit.
QA testing
TODO
Screenshots
Each set of screenshots shows (1) the current appearance / iOS 18 appearance with this PR, (2) various UI bugs with Xcode 27 without the fixes in this PR, (3) the final UI rendered with this PR.
Basic bar buttons and progress bar
Save/discard prompt
Navigation bar opacity
Note the bug in the center screenshot: a hard edge halfway down the nav bar.
RK1 text-style progress indicator alternative
RK2 "Done" button above keyboard, and progress indicator in nav bar