用于android的SegmentedControlIOS in react-native

Hus*_*aik 5 uisegmentedcontrol react-native

我对于反应原生的SegmentedControlIOS的使用感到困惑,我在IOS模拟器中检查它是否有效,但当我在android中检查它时会抛出一个错误,如下所示

此平台不支持SegmentedControlIOS

这是我的代码:

<View >
        <SegmentedControlIOS 
        tintColor="#D7D7D5"
        style={styles.SegmentedControlIOS}

         values={this.state.values}
          selectedIndex={this.state.selectedIndex}
          onChange={this._onChange}
          onValueChange={(val) =>{
            this.setState({
              value:val
            })
          }}/>        
        </View>
Run Code Online (Sandbox Code Playgroud)

任何人都可以给我建议如何使用SegmentedControlIOS安卓和IOS,这方面的任何帮助非常感谢.

Max*_*Max 6

SegmentedControl是iOS上内置的本机组件.但是,在Android上没有直接的等价物,这就是为什么本机组件名称以IOSAndroid 结尾并且不支持Android的原因.没有明显的方法使内置组件在Android上运行.

这有两个选择:

  • 使用标准组件使用或创建自己的版本.这个有一个很好的近似分段控件,可以在两个操作系统上运行.

  • 在iOS和Android上使用两个独立的组件,可以通过创建两个名为的文件自动完成:componentName.android.jscomponentName.ios.js(有关每个平台使用不同代码的详细信息,请参阅此处).iOS特定代码可以使用iOS分段控件,Android版本可以使用https://github.com/zzyyppqq/react-native-segmented-android或自定义实现.