React Native: В чем польза SafeAreaProvider

#reactjs #react-native

Вопрос:

В чем польза SafeAreaProvider? Я не понял документацию github https://github.com/th3rdwave/react-native-safe-area-context.
Для чего я должен его использовать ? SafeAreaView делает хорошую работу…
Даже если SafeAreaProvider ее необходимо использовать с React-навигацией:

 <SafeAreaView>
  <SafeAreaProvider>
    <NavigationContainer>
      ...
    </NavigationContainer>
  </SafeAreaProvider>
</SafeAreaView>
 

Я не вижу в этом смысла…

Ответ №1:

безопасными зонами является экран телефона без зазубрин, к таким элементам относятся:

  1. Физические зазубрины
  2. Наложение строки состояния
  3. Индикатор домашней активности на iOS
  4. Панель навигации на Android

Область, не перекрываемая такими элементами, называется «безопасной зоной».

вы можете увидеть больше примеров и изображений в reactnavigation.org вот и вы все поймете.

с помощью SafeArea содержимое будет

введите описание изображения здесь

без безопасной зоны содержимое будет

введите описание изображения здесь

Комментарии:

1. Да, я знаю, как использовать SafeAreaView, но в чем польза SafeAreaProvider ?

2. это react context provider видите reactjs.org/docs/context.html#contextprovider , чтобы передать реквизит вниз, это вычислит безопасную зону один раз и передаст ее всем SafeAreaViews и «зацепит», как useSafeAreaInsets