/** * Copyright (c) 2015-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * * @flow * @providesModule SegmentedControlIOSExample */ 'use strict'; var React = require('react'); var ReactNative = require('react-native'); var { SegmentedControlIOS, Text, View, StyleSheet } = ReactNative; class BasicSegmentedControlExample extends React.Component<{}> { render() { return ( ); } } class PreSelectedSegmentedControlExample extends React.Component<{}> { render() { return ( ); } } class MomentarySegmentedControlExample extends React.Component<{}> { render() { return ( ); } } class DisabledSegmentedControlExample extends React.Component<{}> { render() { return ( ); } } class ColorSegmentedControlExample extends React.Component<{}> { render() { return ( ); } } class EventSegmentedControlExample extends React.Component<{}, $FlowFixMeState> { state = { values: ['One', 'Two', 'Three'], value: 'Not selected', selectedIndex: undefined }; render() { return ( Value: {this.state.value} Index: {this.state.selectedIndex} ); } _onChange = (event) => { this.setState({ selectedIndex: event.nativeEvent.selectedSegmentIndex, }); }; _onValueChange = (value) => { this.setState({ value: value, }); }; } var styles = StyleSheet.create({ text: { fontSize: 14, textAlign: 'center', fontWeight: '500', margin: 10, }, }); exports.title = ''; exports.displayName = 'SegmentedControlExample'; exports.description = 'Native segmented control'; exports.examples = [ { title: 'Segmented controls can have values', render(): React.Element { return ; } }, { title: 'Segmented controls can have a pre-selected value', render(): React.Element { return ; } }, { title: 'Segmented controls can be momentary', render(): React.Element { return ; } }, { title: 'Segmented controls can be disabled', render(): React.Element { return ; } }, { title: 'Custom colors can be provided', render(): React.Element { return ; } }, { title: 'Change events can be detected', render(): React.Element { return ; } } ];