Получите высоту SafeAreaView изнутри BottomTabBar

Я пытаюсь использовать react-native-keyboard-spacer совместно с react-navigation

В настоящее время я устанавливаю topSpacing для клавиши клавиатуры как -49 высота панели вкладок от react-navigation, но панель вкладок находится в пределах SafeAreaView который магически добавляет отступы для перемещения содержимого в область, которая не мешает собственному пользовательскому интерфейсу.

Это означает, что при просмотре приложения на iPhone X или других подобных устройствах панель вкладок становится выше, чем 50.

Как лучше всего получить высоту SafeAreaView?

7 голосов | спросил 00a5 12 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowWed, 12 Sep 2018 12:59:48 +0300 2018, 12:59:48

2 ответа


0

Вот заполнение списка из react-navigation SafeAreaView

Режим LandScape

paddingLeft: 44
paddingRight: 44
paddingBottom: 24
paddingTop: 0

Портретный режим

paddingLeft: 0
paddingRight: 0
paddingBottom:34
paddingTop:44  // ... Including Status bar height
ответил Pritish Vaidya 12 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowWed, 12 Sep 2018 14:53:29 +0300 2018, 14:53:29
0

Вы можете использовать response-native-safe-area . он предоставляет функцию для получения вставки безопасной области сверху, снизу, слева, справа.

import SafeArea, { type SafeAreaInsets } from 'react-native-safe-area'

//Retrieve safe area insets for root view

SafeArea.getSafeAreaInsetsForRootView()
.then((result) => {
   console.log(result)
   // { safeAreaInsets: { top: 44, left: 0, bottom: 34, right: 0 } }
})
ответил Mohammed Ashfaq 12 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowWed, 12 Sep 2018 14:47:08 +0300 2018, 14:47:08

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132