fix(ios): Set delegate properly in new architecture to resolve question marks display issue #640
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Fixes an issue where the iOS picker displays question marks (?) instead of actual item labels when using React Native's new architecture (Fabric).
Problem
In React Native 0.80.x with the new architecture enabled, the picker delegate was not being properly set, causing the picker to display question marks instead of the actual item labels. This only affected iOS - Android worked fine.
Root Cause
The
RCT_NEW_ARCH_ENABLED
code path had a comment// nothing
instead of properly setting the delegate, while the legacy architecture path correctly setself.delegate = self
.Solution
Added the missing
self.delegate = self;
assignment in theRCT_NEW_ARCH_ENABLED
code path to match the behavior of the legacy architecture.Changes
ios/RNCPicker.mm
// nothing
comment withself.delegate = self;
in the new architecture initializationTesting
Closes
Fixes #639
Checklist