В Официальных документах React Native упоминается, что «веская причина для использования React Native вместо инструментов на основе WebView — достижение 60 кадров в секунду и естественного внешнего вида ваших приложений», однако многие современные iPhone и В iPad есть дисплеи ProMotion с частотой до 120 кадров в секунду, и эта технология используется уже более 3 лет.
Есть ли техническая причина, по которой React Native не может обрабатывать анимацию пользовательского интерфейса с собственной частотой кадров? (Учитывая, что пользовательский интерфейс теоретически состоит из нативных компонентов, не будут ли push
и present
навигация на каком-то уровне вызывать нативные методы как часть UIKit, которые будут работать с текущей частотой кадров устройств?)
Примеры проблем с GitHub:
Представления в React Navigation используют собственные компоненты и библиотеку Animated для создания анимации со скоростью 60 кадров в секунду, которая запускается в собственном потоке.
Проверьте это ~ https://github.com/software-mansion/react-native-reanimated/pull/2636
Этот PR добавляет поддержку 120 кадров в секунду на устройствах iOS. На Android 120 fps уже поддерживается без каких-либо изменений. Ничего не поделаешь. Просто убедитесь, что на вашем устройстве в общих настройках системы включен режим 120 кадров в секунду.
Надеюсь, это поможет вам с вашей проблемой.