React-native: как использовать горизонтальный вид прокрутки, вложенный в компонент Tab с родной базой? - PullRequest
0 голосов
/ 13 апреля 2020

Я использую Native-base Tabs, и я хотел бы использовать горизонтальную ScrollView в одной из вкладок.

Мой код выглядит так:

<Tabs>
      <Tab
          <MyComponent/>
      </Tab>
      <Tab
          <MyComponent/>
      </Tab>
</Tabs>

Но свиток ребенка не работает.

1 Ответ

0 голосов
/ 13 апреля 2020

Мне удалось заставить его работать, блокируя родительскую вкладку, когда ребенок прокручивает.

Здесь есть закуска, показывающая, как это сделать здесь

Вот соответствующий код:

<Tabs locked={this.state.isLocked}>
     <Tab
         <MyComponent lockTab={this.lockTab}/>
     </Tab>
     <Tab
         <MyComponent/>
     </Tab>
</Tabs>

А внутри MyComponent:

  handleInnerPressIn = () => this.props.lockTab(true);
  handleInnerPressOut = () => this.props.lockTab(false);

<ScrollView nestedScrollEnable={true} horizontal={true}>
    <TouchableWithoutFeedback
              onPressIn={this.handleInnerPressIn}
              onPressOut={this.handleInnerPressOut}>
    </TouchableWithoutFeedback>
</SrollView>

Одна важная вещь , на которую следует обратить внимание, заключается в том, что она работает только в том случае, если TouchableWithoutFeedback это внутри (и не содержит) ScrollView

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...