/**
* 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.
*
* @format
* @flow
*/
'use strict';
var React = require('react');
var ReactNative = require('react-native');
var {AccessibilityInfo, Text, View, TouchableOpacity} = ReactNative;
class AccessibilityIOSExample extends React.Component<{}> {
render() {
return (
alert('onAccessibilityTap success')}
accessible={true}>
Accessibility normal tap example
alert('onMagicTap success')} accessible={true}>
Accessibility magic tap example
Accessibility label example
Accessibility traits example
Text's accessibilityLabel is the raw text itself unless it is set
explicitly.
This text component's accessibilityLabel is set explicitly.
This view component has both an accessibilityLabel and an
accessibilityHint explicitly set.
This text component has both an accessibilityLabel and an
accessibilityHint explicitly set.
This button has both an accessibilityLabel and an
accessibilityHint explicitly set.
This view's children are hidden from the accessibility tree
);
}
}
class ScreenReaderStatusExample extends React.Component<{}, $FlowFixMeState> {
state = {
screenReaderEnabled: false,
};
componentDidMount() {
AccessibilityInfo.addEventListener(
'change',
this._handleScreenReaderToggled,
);
AccessibilityInfo.fetch().done(isEnabled => {
this.setState({
screenReaderEnabled: isEnabled,
});
});
}
componentWillUnmount() {
AccessibilityInfo.removeEventListener(
'change',
this._handleScreenReaderToggled,
);
}
_handleScreenReaderToggled = isEnabled => {
this.setState({
screenReaderEnabled: isEnabled,
});
};
render() {
return (
The screen reader is{' '}
{this.state.screenReaderEnabled ? 'enabled' : 'disabled'}.
);
}
}
exports.title = 'AccessibilityIOS';
exports.description = "Interface to show iOS' accessibility samples";
exports.examples = [
{
title: 'Accessibility elements',
render(): React.Element {
return ;
},
},
{
title: 'Check if the screen reader is enabled',
render(): React.Element {
return ;
},
},
];