如何以编程方式在React Native中切换开关?

时间:2017-07-20 16:39:05

标签: react-native react-native-ios

我在一个视图中向我们提供了几个Switch Components。当我打开一个开关时,我希望所有其他开关关闭。目前,我通过状态设置布尔value属性。这会导致突然发生变化,因为开关只是重新渲染而不是过渡。

那么你将如何以编程方式切换它们呢?

编辑2 :我刚刚发现它在Android上运行顺畅,因此它看起来像iOS特定的问题。

编辑:代码的一部分

  _onSwitch = (id, switched) => {
    let newFilter = { status: null };

    if (!switched) {
      newFilter = { status: id };
    }
    this.props.changeFilter(newFilter); // calls the action creator
  };

  _renderItem = ({ item }) => {
    const switched = this.props.currentFilter === item.id; // the state mapped to a prop
    return (
      <ListItem
        switchButton
        switched={switched}
        onSwitch={() => this._onSwitch(item.id, switched)}
      />
    );
  };

0 个答案:

没有答案