样式不适用于默认值" open = true"首先启动" react-native-drawer"

时间:2017-04-02 08:27:06

标签: react-native

抽屉设置:

<Drawer
  open={true}
  tapToClose={true}
  initializeOpen={true}
  tweenDuration={100}
  disabled={false}
  type="overlay"
  content={<[component name] />}
  tapToClose={true}
  openDrawerOffset={0.2}
  panOpenMask={0.05}
  panCloseMask={0.2}
  closedDrawerOffset={-2}
  tweenHandler={(ratio) => (
    { main: { opacity: 1 },
    mainOverlay: { opacity: ratio / 2, backgroundColor: 'black',}
    })}
  styles={{
  drawer: {shadowColor: 'black', shadowOpacity: 0.8, shadowRadius: 2,
                  elevation: 20}, //Supported on Android 5.0+ only
  main: {paddingLeft: 2}
  }}
  >

环境

react-native-drawer版本:2.3.0

React Native version:0.42.3

平台(iOS,Android或两者兼而有之?):两者

设备信息模拟器/设备? - 模拟器Android 4.1(API16)/ 7.1.1(API25),模拟器iOS 10.2 / iOS 8.1

操作系统版本? - MacOS 10.12.3

调试/发布? - 调试

但是&#34; mainOverlay:{..., backgroundColor:&#39;黑色&#39;,} 未应用首发:

backgroundColor white

再次关闭并打开抽屉后,它看起来像预期的黑色背景颜色:

backgroundColor black

也许有人知道如何修复它?

1 个答案:

答案 0 :(得分:0)

我搜索了以前的一些问题&#39; react-native-drawer&#39;对于一些与背景相关的问题,在此期间我偶然发现了这个对我来说很好的解决方案。

将抽屉组件的样式道具设置为

styles={ mainOverlay: { backgroundColor: 'black', opacity: 0, } }

&安培;

将Drawer组件的tweenHandler prop设置为

tweenHandler={(ratio) => ({ mainOverlay: { opacity: ratio / 2 } })