【问题标题】:NativeBase tabs unable to customise borderBottomColorNativeBase 选项卡无法自定义borderBottomColor
【发布时间】:2018-04-11 15:20:23
【问题描述】:

我有几个标签定义如下:

<Tabs renderTabBar={() => <ScrollableTab />}>
      <Tab heading="Tab1" tabStyle={styles.tabStyling} activeTabStyle={styles.activeTabStyle} textStyle={styles.tabTextStyle} activeTextStyle={styles.activeTabTextStyle} />
      <Tab heading="Tab2" tabStyle={styles.tabStyling} activeTabStyle={styles.activeTabStyle} textStyle={styles.tabTextStyle} activeTextStyle={styles.activeTabTextStyle} />
      <Tab heading="Tab3" tabStyle={styles.tabStyling} activeTabStyle={styles.activeTabStyle} textStyle={styles.tabTextStyle} activeTextStyle={styles.activeTabTextStyle} />
      <Tab heading="Tab4" tabStyle={styles.tabStyling} activeTabStyle={styles.activeTabStyle} textStyle={styles.tabTextStyle} activeTextStyle={styles.activeTabTextStyle} />
      <Tab heading="Tab5" tabStyle={styles.tabStyling} activeTabStyle={styles.activeTabStyle} textStyle={styles.tabTextStyle} activeTextStyle={styles.activeTabTextStyle} />
</Tabs>

以下样式:

const styles = StyleSheet.create({
  tabStyling: {
    backgroundColor: '#37b372'
  },
  activeTabStyle: {
    backgroundColor: '#37b372',
    borderColor: 'white',
    borderBottomColor: 'red'
  },
  tabTextStyle: {
    color: 'black'
  },
  activeTabTextStyle: {
    fontWeight: 'bold',
    color: 'white',
    fontSize: 20
  }
});

activeTabStyle 上,我已经定义了borderBottomColor: 'red',但它仍然给我默认的蓝色

下面是NativeBase的界面

interface Tab {
  heading: React.ReactElement<TabHeading> | string;
  tabStyle?:ReactNative.ViewStyle | Array<ReactNative.ViewStyle>;
  activeTabStyle?: ReactNative.ViewStyle | Array<ReactNative.ViewStyle>;
  textStyle?: ReactNative.TextStyle;
  activeTextStyle?: ReactNative.TextStyle;
}

所以activeTabStyle 应该只是基本的ReactNative.ViewStyle

【问题讨论】:

    标签: react-native tabs native-base


    【解决方案1】:

    最好的方法是使用tabBarUnderlineStyle 提到的here,因为它是Tabs 而不是Tab 的属性。

    例如

    <Tabs tabBarUnderlineStyle={{ backgroundColor: 'YOUR_SAMPLE_COLOR' }} renderTabBar={() => <ScrollableTab /> }>
      {... // Rest of the data}                   
    </Tabs>
    

    另外需要注意的是,您的样式已被应用,但它隐藏在默认边框下方。 要注意它,您可以添加

     activeTabStyle: {
        backgroundColor: '#37b372',
        borderColor: 'white',
        borderBottomColor: 'red',
        borderBottomWidth: 10
      },
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-30
      相关资源
      最近更新 更多