1

我正在使用@react-navigation/bottom-tabs V6。我正在尝试在底部设置透明背景。到目前为止,我无法弄清楚该怎么做。有任何想法吗?到目前为止的结果:

在此处输入图像描述

到目前为止的代码:

import { createBottomTabNavigator } from "@react-navigation/bottom-tabs";
  
const theme = {
  colors: {
    background: "transparent",
  },
};

  <NavigationContainer theme={theme}>
    <Tab.Navigator
      screenOptions={{ headerShown: false }}
      tabBarOptions={{
        style: {
          backgroundColor: 'transparent',
          borderTopWidth: 0,
          elevation: 0,
        }
      }}
    >
      <Tab.Screen
        name="HomeNavigation"
        component={HomeNavigation}
        options={{
          tabBarLabel: "Home",
          tabBarIcon: ({ color, size }) => <Icon />,
        }}
      />
      <Tab.Screen name="Home" component={Home} />
    </Tab.Navigator>
  </NavigationContainer>

我怎样才能摆脱这个背景?

4

2 回答 2

0

好的,这就是解决方案

第一的:

<Tab.Navigator
  screenOptions={{
    headerShown: false,
    tabBarStyle: {
      position: "absolute",
      left: 0,
      bottom: 0,
      elevation: 0,
      borderTopWidth: 0,
    },
  }}
>

这也必须添加到容器中:

const theme = {
  colors: {
    background: "transparent",
  },
};

<NavigationContainer theme={theme}>
   <BottomUserNavigation />
</NavigationContainer>
于 2021-12-04T20:33:08.620 回答
0

Tab.Navigator 没有称为 tabBarOptions 的道具。

在 screenOptions 中找到的 tabBarOptions。

你可以这样做->

    <NavigationContainer theme={theme}>
      <Tab.Navigator
        screenOptions={{
          headerShown: false,
          tabBarStyle: { backgroundColor: "transparent" },
        }}
      >
        <Tab.Screen
          name="HomeNavigation"
          component={HomeNavigation}
          options={{
            tabBarLabel: "Home",
            tabBarIcon: ({ color, size }) => <Icon />,
          }}
        />
        <Tab.Screen name="Home" component={Home} />
      </Tab.Navigator>
    </NavigationContainer>

只需在 tabBarStyle 中添加 tabBarStyle 道具并设置样式

或者您可以只为这样一个屏幕添加屏幕选项。

    <NavigationContainer theme={theme}>
      <Tab.Navigator
        screenOptions={{
          headerShown: false,
        }}
      >
        <Tab.Screen
          name="HomeNavigation"
          component={HomeNavigation}
          options={{
            tabBarLabel: "Home",
            tabBarIcon: ({ color, size }) => <Icon />,
            tabBarStyle:{backgroundColor:"transparent"}
          }}
        />
        <Tab.Screen name="Home" component={Home} />
      </Tab.Navigator>
    </NavigationContainer>
于 2021-12-04T13:58:11.300 回答