Files
react-native/docs/next/appearance.html
T
Website Deployment Script 6eabd55d91 Deploy website
Deploy website version based on ea9cd59f9553f680fe297c8c51618d1fe6112cbe
2020-03-13 12:21:01 +00:00

145 lines
26 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Appearance · React Native</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="```jsx"/><meta name="docsearch:version" content="next"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Appearance · React Native"/><meta property="og:type" content="website"/><meta property="og:url" content="https://reactnative.dev/"/><meta property="og:description" content="```jsx"/><meta name="twitter:card" content="summary"/><link rel="shortcut icon" href="/img/favicon.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/solarized-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://reactnative.dev/blog/atom.xml" title="React Native Blog ATOM Feed"/><link rel="alternate" type="application/rss+xml" href="https://reactnative.dev/blog/feed.xml" title="React Native Blog RSS Feed"/><script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-41298772-2', 'auto');
ga('send', 'pageview');
</script><script type="text/javascript" src="https://cdn.jsdelivr.net/npm/focus-visible@5.0.2/dist/focus-visible.min.js"></script><script type="text/javascript" src="https://snack.expo.io/embed.js"></script><script type="text/javascript" src="https://platform.twitter.com/widgets.js"></script><script type="text/javascript" src="https://buttons.github.io/buttons.js"></script><script type="text/javascript" src="/js/codeblocks.js"></script><script type="text/javascript" src="/js/tabs.js"></script><script type="text/javascript" src="/js/docs-rating.js"></script><script src="https://unpkg.com/vanilla-back-to-top@7.1.14/dist/vanilla-back-to-top.min.js"></script><script>
document.addEventListener('DOMContentLoaded', function() {
addBackToTop(
{"zIndex":100}
)
});
</script><script src="/js/scrollSpy.js"></script><link rel="stylesheet" href="/css/prism.css"/><link rel="stylesheet" href="/css/main.css"/><script src="/js/codetabs.js"></script></head><body class="sideNavVisible separateOnPageNav"><div class="fixedHeaderContainer"><div class="headerWrapper wrapper"><header><a href="/"><img class="logo" src="/img/header_logo.svg" alt="React Native"/><h2 class="headerTitleWithLogo">React Native</h2></a><a href="/versions"><h3>next</h3></a><div class="navigationWrapper navigationSlider"><nav class="slidingNav"><ul class="nav-site nav-site-internal"><li class=""><a href="/docs/next/getting-started" target="_self">Docs</a></li><li class="siteNavGroupActive"><a href="/docs/next/activityindicator" target="_self">API</a></li><li class=""><a href="/help" target="_self">Community</a></li><li class=""><a href="/blog/" target="_self">Blog</a></li><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li><li class=""><a href="https://github.com/facebook/react-native" target="_self">GitHub</a></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><div class="hamburger-menu"><div class="line1"></div><div class="line2"></div><div class="line3"></div></div></div><h2><i></i><span>APIs</span></h2><div class="tocToggler" id="tocToggler"><i class="icon-toc"></i></div></div><div class="navGroups"><div class="navGroup"><h3 class="navGroupCategoryTitle collapsible">Core Components<span class="arrow"><svg width="24" height="24" viewBox="0 0 24 24"><path fill="#565656" d="M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z"></path><path d="M0 0h24v24H0z" fill="none"></path></svg></span></h3><ul class="hide"><li class="navListItem"><a class="navItem" href="/docs/next/components-and-apis">Core Components and APIs</a></li><li class="navListItem"><a class="navItem" href="/docs/next/activityindicator">ActivityIndicator</a></li><li class="navListItem"><a class="navItem" href="/docs/next/button">Button</a></li><li class="navListItem"><a class="navItem" href="/docs/next/datepickerios">🚧 DatePickerIOS</a></li><li class="navListItem"><a class="navItem" href="/docs/next/drawerlayoutandroid">DrawerLayoutAndroid</a></li><li class="navListItem"><a class="navItem" href="/docs/next/flatlist">FlatList</a></li><li class="navListItem"><a class="navItem" href="/docs/next/image">Image</a></li><li class="navListItem"><a class="navItem" href="/docs/next/imagebackground">ImageBackground</a></li><li class="navListItem"><a class="navItem" href="/docs/next/inputaccessoryview">InputAccessoryView</a></li><li class="navListItem"><a class="navItem" href="/docs/next/keyboardavoidingview">KeyboardAvoidingView</a></li><li class="navListItem"><a class="navItem" href="/docs/next/modal">Modal</a></li><li class="navListItem"><a class="navItem" href="/docs/next/picker">Picker</a></li><li class="navListItem"><a class="navItem" href="/docs/next/pickerios">🚧 PickerIOS</a></li><li class="navListItem"><a class="navItem" href="/docs/next/progressbarandroid">🚧 ProgressBarAndroid</a></li><li class="navListItem"><a class="navItem" href="/docs/next/progressviewios">🚧 ProgressViewIOS</a></li><li class="navListItem"><a class="navItem" href="/docs/next/refreshcontrol">RefreshControl</a></li><li class="navListItem"><a class="navItem" href="/docs/next/safeareaview">SafeAreaView</a></li><li class="navListItem"><a class="navItem" href="/docs/next/scrollview">ScrollView</a></li><li class="navListItem"><a class="navItem" href="/docs/next/sectionlist">SectionList</a></li><li class="navListItem"><a class="navItem" href="/docs/next/segmentedcontrolios">🚧 SegmentedControlIOS</a></li><li class="navListItem"><a class="navItem" href="/docs/next/slider">🚧 Slider</a></li><li class="navListItem"><a class="navItem" href="/docs/next/statusbar">StatusBar</a></li><li class="navListItem"><a class="navItem" href="/docs/next/switch">Switch</a></li><li class="navListItem"><a class="navItem" href="/docs/next/text">Text</a></li><li class="navListItem"><a class="navItem" href="/docs/next/textinput">TextInput</a></li><li class="navListItem"><a class="navItem" href="/docs/next/touchablehighlight">TouchableHighlight</a></li><li class="navListItem"><a class="navItem" href="/docs/next/touchablenativefeedback">TouchableNativeFeedback</a></li><li class="navListItem"><a class="navItem" href="/docs/next/touchableopacity">TouchableOpacity</a></li><li class="navListItem"><a class="navItem" href="/docs/next/touchablewithoutfeedback">TouchableWithoutFeedback</a></li><li class="navListItem"><a class="navItem" href="/docs/next/view">View</a></li><li class="navListItem"><a class="navItem" href="/docs/next/viewpagerandroid">🚧 ViewPagerAndroid</a></li><li class="navListItem"><a class="navItem" href="/docs/next/virtualizedlist">VirtualizedList</a></li></ul></div><div class="navGroup"><h3 class="navGroupCategoryTitle collapsible">Props<span class="arrow"><svg width="24" height="24" viewBox="0 0 24 24"><path fill="#565656" d="M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z"></path><path d="M0 0h24v24H0z" fill="none"></path></svg></span></h3><ul class="hide"><li class="navListItem"><a class="navItem" href="/docs/next/image-style-props">Image Style Props</a></li><li class="navListItem"><a class="navItem" href="/docs/next/layout-props">Layout Props</a></li><li class="navListItem"><a class="navItem" href="/docs/next/shadow-props">Shadow Props</a></li><li class="navListItem"><a class="navItem" href="/docs/next/text-style-props">Text Style Props</a></li><li class="navListItem"><a class="navItem" href="/docs/next/view-style-props">View Style Props</a></li></ul></div><div class="navGroup"><h3 class="navGroupCategoryTitle collapsible">APIs<span class="arrow"><svg width="24" height="24" viewBox="0 0 24 24"><path fill="#565656" d="M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z"></path><path d="M0 0h24v24H0z" fill="none"></path></svg></span></h3><ul class="hide"><li class="navListItem"><a class="navItem" href="/docs/next/accessibilityinfo">AccessibilityInfo</a></li><li class="navListItem"><a class="navItem" href="/docs/next/actionsheetios">ActionSheetIOS</a></li><li class="navListItem"><a class="navItem" href="/docs/next/alert">Alert</a></li><li class="navListItem"><a class="navItem" href="/docs/next/alertios">🚧 AlertIOS</a></li><li class="navListItem"><a class="navItem" href="/docs/next/animated">Animated</a></li><li class="navListItem navListItemActive"><a class="navItem" href="/docs/next/appearance">Appearance</a></li><li class="navListItem"><a class="navItem" href="/docs/next/appregistry">AppRegistry</a></li><li class="navListItem"><a class="navItem" href="/docs/next/appstate">AppState</a></li><li class="navListItem"><a class="navItem" href="/docs/next/asyncstorage">🚧 AsyncStorage</a></li><li class="navListItem"><a class="navItem" href="/docs/next/backhandler">BackHandler</a></li><li class="navListItem"><a class="navItem" href="/docs/next/clipboard">🚧 Clipboard</a></li><li class="navListItem"><a class="navItem" href="/docs/next/datepickerandroid">🚧 DatePickerAndroid</a></li><li class="navListItem"><a class="navItem" href="/docs/next/devsettings">DevSettings</a></li><li class="navListItem"><a class="navItem" href="/docs/next/dimensions">Dimensions</a></li><li class="navListItem"><a class="navItem" href="/docs/next/easing">Easing</a></li><li class="navListItem"><a class="navItem" href="/docs/next/imageeditor">🚧 ImageEditor</a></li><li class="navListItem"><a class="navItem" href="/docs/next/imagepickerios">🚧 ImagePickerIOS</a></li><li class="navListItem"><a class="navItem" href="/docs/next/interactionmanager">InteractionManager</a></li><li class="navListItem"><a class="navItem" href="/docs/next/keyboard">Keyboard</a></li><li class="navListItem"><a class="navItem" href="/docs/next/layoutanimation">LayoutAnimation</a></li><li class="navListItem"><a class="navItem" href="/docs/next/linking">Linking</a></li><li class="navListItem"><a class="navItem" href="/docs/next/panresponder">PanResponder</a></li><li class="navListItem"><a class="navItem" href="/docs/next/permissionsandroid">PermissionsAndroid</a></li><li class="navListItem"><a class="navItem" href="/docs/next/pixelratio">PixelRatio</a></li><li class="navListItem"><a class="navItem" href="/docs/next/pushnotificationios">🚧 PushNotificationIOS</a></li><li class="navListItem"><a class="navItem" href="/docs/next/settings">Settings</a></li><li class="navListItem"><a class="navItem" href="/docs/next/share">Share</a></li><li class="navListItem"><a class="navItem" href="/docs/next/statusbarios">🚧 StatusBarIOS</a></li><li class="navListItem"><a class="navItem" href="/docs/next/stylesheet">StyleSheet</a></li><li class="navListItem"><a class="navItem" href="/docs/next/systrace">Systrace</a></li><li class="navListItem"><a class="navItem" href="/docs/next/timepickerandroid">🚧 TimePickerAndroid</a></li><li class="navListItem"><a class="navItem" href="/docs/next/toastandroid">ToastAndroid</a></li><li class="navListItem"><a class="navItem" href="/docs/next/transforms">Transforms</a></li><li class="navListItem"><a class="navItem" href="/docs/next/usewindowdimensions">useWindowDimensions</a></li><li class="navListItem"><a class="navItem" href="/docs/next/vibration">Vibration</a></li></ul></div></div></section></div><script>
var coll = document.getElementsByClassName('collapsible');
var checkActiveCategory = true;
for (var i = 0; i < coll.length; i++) {
var links = coll[i].nextElementSibling.getElementsByTagName('*');
if (checkActiveCategory){
for (var j = 0; j < links.length; j++) {
if (links[j].classList.contains('navListItemActive')){
coll[i].nextElementSibling.classList.toggle('hide');
coll[i].childNodes[1].classList.toggle('rotate');
checkActiveCategory = false;
break;
}
}
}
coll[i].addEventListener('click', function() {
var arrow = this.childNodes[1];
arrow.classList.toggle('rotate');
var content = this.nextElementSibling;
content.classList.toggle('hide');
});
}
document.addEventListener('DOMContentLoaded', function() {
createToggler('#navToggler', '#docsNav', 'docsSliderActive');
createToggler('#tocToggler', 'body', 'tocActive');
var headings = document.querySelector('.toc-headings');
headings && headings.addEventListener('click', function(event) {
var el = event.target;
while(el !== headings){
if (el.tagName === 'A') {
document.body.classList.remove('tocActive');
break;
} else{
el = el.parentNode;
}
}
}, false);
function createToggler(togglerSelector, targetSelector, className) {
var toggler = document.querySelector(togglerSelector);
var target = document.querySelector(targetSelector);
if (!toggler) {
return;
}
toggler.onclick = function(event) {
event.preventDefault();
target.classList.toggle(className);
};
}
});
</script></nav></div><div class="container mainContainer docsContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/facebook/react-native-website/blob/master/docs/appearance.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 id="__docusaurus" class="postHeaderTitle">Appearance</h1></header><article><div><span><pre><code class="hljs css language-jsx"><span class="token keyword">import</span> <span class="token punctuation">{</span>Appearance<span class="token punctuation">}</span> <span class="token keyword">from</span> <span class="token string">'react-native'</span><span class="token punctuation">;</span>
</code></pre>
<p>Exposes information about the user's appearance preferences.</p>
<p>You can use the Appearance module to determine if the user prefers a dark color scheme:</p>
<pre><code class="hljs css language-jsx"><span class="token keyword">const</span> colorScheme <span class="token operator">=</span> Appearance<span class="token punctuation">.</span><span class="token function">getColorScheme</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token keyword">if</span> <span class="token punctuation">(</span>colorScheme <span class="token operator">===</span> <span class="token string">'dark'</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
<span class="token comment">// Use dark color scheme</span>
<span class="token punctuation">}</span>
</code></pre>
<p>Although the color scheme is available immediately, this may change (e.g scheduled color scheme change at sunrise or sunset). Any rendering logic or styles that depend on the user preferred color scheme should try to call this function on every render, rather than caching the value (for example, using a context and the <code>useColorScheme</code> hook, or using inline styles rather than setting a value in a <code>StyleSheet</code>).</p>
<div class="toggler">
<span>Developer Notes</span>
<span role="tablist" class="toggle-devNotes">
<button role="tab" class="button-webNote" onclick="displayTabs('devNotes', 'webNote')">Web</button>
<button role="tab" class="button-androidNote" onclick="displayTabs('devNotes', 'androidNote')">Android</button>
<button role="tab" class="button-iosNote" onclick="displayTabs('devNotes', 'iosNote')">iOS</button>
</span>
</div>
<p><block class="webNote devNotes" /></p>
<blockquote>
<p>The Appearance API is inspired by the <a href="https://drafts.csswg.org/mediaqueries-5/">Media Queries draft</a> from the W3C. The color scheme preference is modeled after the <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-color-scheme"><code>prefers-color-scheme</code> CSS media feature</a>.</p>
</blockquote>
<p><block class="androidNote devNotes" /></p>
<blockquote>
<p>The color scheme preference will map to the user's Light or <a href="https://developer.android.com/guide/topics/ui/look-and-feel/darktheme">Dark theme</a> preference on Android 10 (API level 29) devices and higher.</p>
</blockquote>
<p><block class="iosNote devNotes" /></p>
<blockquote>
<p>The color scheme preference will map to the user's Light or <a href="https://developer.apple.com/design/human-interface-guidelines/ios/visual-design/dark-mode/">Dark Mode</a> preference on iOS 13 devices and higher.</p>
</blockquote>
<p><block class="endBlock devNotes" /></p>
<h3><a class="anchor" aria-hidden="true" id="usecolorscheme-hook"></a><a href="#usecolorscheme-hook" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a><code>useColorScheme</code> Hook</h3>
<p>The <code>useColorScheme</code> React hook provides and subscribes to color scheme updates:</p>
<pre><code class="hljs css language-jsx"><span class="token keyword">import</span> <span class="token punctuation">{</span>Text<span class="token punctuation">,</span> useColorScheme<span class="token punctuation">}</span> <span class="token keyword">from</span> <span class="token string">'react-native'</span><span class="token punctuation">;</span>
<span class="token keyword">const</span> <span class="token function-variable function">MyComponent</span> <span class="token operator">=</span> <span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token operator">=></span> <span class="token punctuation">{</span>
<span class="token keyword">const</span> colorScheme <span class="token operator">=</span> <span class="token function">useColorScheme</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token keyword">return</span> <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span><span class="token class-name">Text</span></span><span class="token punctuation">></span></span><span class="token plain-text">useColorScheme(): </span><span class="token punctuation">{</span>colorScheme<span class="token punctuation">}</span><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span><span class="token class-name">Text</span></span><span class="token punctuation">></span></span><span class="token punctuation">;</span>
<span class="token punctuation">}</span><span class="token punctuation">;</span>
</code></pre>
<p>You can find a complete example that demonstrates the use of this hook alongside a React context to add support for light and dark themes to your application in <a href="https://github.com/facebook/react-native/blob/master/RNTester/js/examples/Appearance/AppearanceExample.js"><code>AppearanceExample.js</code></a>.</p>
<h1><a class="anchor" aria-hidden="true" id="reference"></a><a href="#reference" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Reference</h1>
<h2><a class="anchor" aria-hidden="true" id="methods"></a><a href="#methods" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Methods</h2>
<h3><a class="anchor" aria-hidden="true" id="getcolorscheme"></a><a href="#getcolorscheme" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a><code>getColorScheme()</code></h3>
<pre><code class="hljs css language-jsx"><span class="token keyword">static</span> <span class="token function">getColorScheme</span><span class="token punctuation">(</span><span class="token punctuation">)</span>
</code></pre>
<p>Indicates the current user preferred color scheme. The value may be updated later, either through direct user action (e.g. theme selection in device settings) or on a schedule (e.g. light and dark themes that follow the day/night cycle).</p>
<p>Supported color schemes:</p>
<ul>
<li><code>light</code>: The user prefers a light color theme.</li>
<li><code>dark</code>: The user prefers a dark color theme.</li>
<li>null: The user has not indicated a preferred color theme.</li>
</ul>
<p>See also: <code>useColorScheme</code> hook.</p>
</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/next/animated"><span class="arrow-prev"></span><span>Animated</span></a><a class="docs-next button" href="/docs/next/appregistry"><span class="function-name-prevnext">AppRegistry</span><span class="arrow-next"></span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#methods">Methods</a><ul class="toc-headings"><li><a href="#getcolorscheme"><code>getColorScheme()</code></a></li></ul></li></ul></nav></div><footer class="nav-footer" id="footer"><section class="sitemap"><div><h5>Docs</h5><a href="/docs/getting-started.html">Getting Started</a><a href="/docs/tutorial.html">Tutorial</a><a href="/docs/components-and-apis.html">Components and APIs</a><a href="/docs/more-resources.html">More Resources</a></div><div><h5>Community</h5><a href="/help.html">The React Native Community</a><a href="/showcase.html">Who&#x27;s using React Native?</a><a href="http://stackoverflow.com/questions/tagged/react-native" target="_blank">Ask Questions on Stack Overflow</a><a href="https://github.com/facebook/react-native/blob/master/CONTRIBUTING.md">Contributor Guide</a><a href="https://dev.to/t/reactnative" target="_blank">DEV Community</a></div><div><h5>More Resources</h5><a href="/blog/">Blog</a><a href="https://twitter.com/reactnative" target="_blank">Twitter</a><a href="https://github.com/facebook/react-native" target="_blank">GitHub</a><a href="https://reactjs.org" target="_blank">React</a></div></section><a href="https://code.facebook.com/projects/" target="_blank" class="fbOpenSource"><img src="/img/oss_logo.png" alt="Facebook Open Source" width="170" height="45"/></a><section class="copyright">Copyright © 2020 Facebook Inc.</section></footer></div><script type="text/javascript" src="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.js"></script><script>window.fbAsyncInit = function() {FB.init({appId:'1677033832619985',xfbml:true,version:'v2.7'});};(function(d, s, id){var js, fjs = d.getElementsByTagName(s)[0];if (d.getElementById(id)) {return;}js = d.createElement(s); js.id = id;js.src = '//connect.facebook.net/en_US/sdk.js';fjs.parentNode.insertBefore(js, fjs);}(document, 'script','facebook-jssdk'));
</script><script>window.twttr=(function(d,s, id){var js,fjs=d.getElementsByTagName(s)[0],t=window.twttr||{};if(d.getElementById(id))return t;js=d.createElement(s);js.id=id;js.src='https://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js, fjs);t._e = [];t.ready = function(f) {t._e.push(f);};return t;}(document, 'script', 'twitter-wjs'));</script><script>
document.addEventListener('keyup', function(e) {
if (e.target !== document.body) {
return;
}
// keyCode for '/' (slash)
if (e.keyCode === 191) {
const search = document.getElementById('search_input_react');
search && search.focus();
}
});
</script><script>
var search = docsearch({
apiKey: '2c98749b4a1e588efec53b2acec13025',
indexName: 'react-native-versions',
inputSelector: '#search_input_react',
algoliaOptions: {"facetFilters":["tags:next"],"hitsPerPage":5}
});
</script></body></html>