[iOS] - Elements in a row are announced in the wrong order by VoiceOver
Chưa có ai nhận issue này.
- Ngôn ngữ chính
- C++
- Star
- 127k
- Fork
- 25.3k
- Merge trung bình
- 1 ngày 23 giờ
- Pull request đã merge (30 ngày)
- 4
Mô tả
Description
When elements with different heights are in a row with alignItems: ‘center’ or alignItems:’flex-end’, the tallest ones are selected and announced first by VoiceOver on iOS.
Tested on iPhone 13 mini, iOS 17.4.1
Steps to reproduce
- use the code in the reproducer and build on a physical iOS device
- activate VoiceOver and go through each example by swiping right
React Native Version
0.83.1
Affected Platforms
Runtime - iOS
Output of npx @react-native-community/cli info
System:
OS: macOS 26.2
CPU: (8) arm64 Apple M2
Memory: 94.20 MB / 16.00 GB
Shell:
version: "5.9"
path: /bin/zsh
Binaries:
Node:
version: 22.7.0
path: /Users/gbs05577/.nvm/versions/node/v22.7.0/bin/node
Yarn:
version: 1.22.22
path: /opt/homebrew/bin/yarn
npm:
version: 10.8.2
path: /Users/gbs05577/.nvm/versions/node/v22.7.0/bin/npm
Watchman:
version: 2022.11.28.00
path: /opt/homebrew/bin/watchman
Managers:
CocoaPods:
version: 1.15.2
path: /Users/gbs05577/.rbenv/shims/pod
SDKs:
iOS SDK:
Platforms:
- DriverKit 25.2
- iOS 26.2
- macOS 26.2
- tvOS 26.2
- visionOS 26.2
- watchOS 26.2
Android SDK: Not Found
IDEs:
Android Studio: 2025.2 AI-252.25557.131.2521.14344949
Xcode:
version: 26.2/17C52
path: /usr/bin/xcodebuild
Languages:
Java:
version: 17.0.16
path: /usr/bin/javac
Ruby:
version: 2.7.5
path: /Users/gbs05577/.rbenv/shims/ruby
npmPackages:
"@react-native-community/cli":
installed: 20.0.0
wanted: 20.0.0
react:
installed: 19.2.0
wanted: 19.2.0
react-native:
installed: 0.83.1
wanted: 0.83.1
react-native-macos: Not Found
npmGlobalPackages:
"*react-native*": Not Found
Android:
hermesEnabled: true
newArchEnabled: true
iOS:
hermesEnabled: true
newArchEnabled: true
Stacktrace or Logs
-
MANDATORY Reproducer
https://snack.expo.dev/@andreamartinez/ios-voiceover-order-bug
Screenshots and Videos
https://github.com/user-attachments/assets/d76a86d2-1663-4bb6-bd14-085bd88a144e
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Hướng nghiên cứu
Bắt đầu với trình tái hiện Snack được liên kết và chạy nó trên một thiết bị iOS vật lý đã bật VoiceOver, làm theo các bước vuốt sang phải được liệt kê. Theo dõi hành vi của React Native iOS chịu trách nhiệm cho thứ tự của các phần tử trợ năng; được xem là hoàn tất khi các phần tử trong những hàng có chiều cao khác nhau được đọc theo thứ tự trực quan đối với các chế độ căn chỉnh được báo cáo.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- ios, react-native
- Lĩnh vực
- accessibility, mobile-dev
- Loại issue
- Lỗi
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Ít trao đổi
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 48/100