0

我正在使用 react native-base 并且我试图将我的屏幕向右滑动以显示抽屉。我期待在刷卡时看到这个:

在此处输入图像描述

下面是我的代码,

import React, { Component } from 'react'
import { Drawer, View } from 'native-base'
import { Navigator } from 'react-native'

export default class AppContainer extends Component {
  constructor(props) {
    super(props)
    this.state = {
      toggled: false,
      store: {},
      theme: null
    }
  }
  toggleDrawer() {
    this.state.toggled ? this._drawer.close() : this._drawer.open()
  }
  openDrawer() {
    this.setState({toggled: true})
  }
  closeDrawer() {
    this.setState({toggled: false})
  }
  renderScene(route, navigator) {
    switch(route) {
      default: {
        return null
      }
    }
  }
  configureScene(route, routeStack) {
    return Navigator.SceneConfigs.PushFromRight
  }
  render() {
    return (
      <Drawer
        ref={(ref) => this._drawer = ref}
        type="displace"
        content={<View style={{backgroundColor: "#000", height: 1000}}/>}
        onClose={this.closeDrawer.bind(this)}
        onOpen={this.openDrawer.bind(this)}
        openDrawerOffset={0.2}
        >
          <Navigator
            ref={(ref) => this._navigator = ref}
            configureScene={this.configureScene.bind(this)}
            renderScene={this.renderScene.bind(this)}
            />
        </Drawer>
    )
  }
}

当我们运行这段代码时,我们得到的只是一个空白屏幕。我尝试向右滑动,但抽屉没有出现。

在此处输入图像描述

正如我们所见,我在渲染函数中返回了 Drawer 组件,但是当我尝试滑动它时,抽屉没有出现。我尝试在物理设备和虚拟设备上的 Android 上运行它,但它们没有激活抽屉。可能是什么问题?

4

1 回答 1

1

在 Drawer 组件内之后

openDrawerOffset={0.2}

添加以下内容:

panOpenMask={0.80}
captureGestures="open"
于 2017-04-20T20:58:37.357 回答