1. 程式人生 > >React Navigation--TabNavigator 詳細的例子

React Navigation--TabNavigator 詳細的例子

/**
 * Created by YiBing on 2017/5/5.
 * 本程式效果:類似Android中的ViewPager--有2個頁面,可以隨手勢來回切換,也可以點選Tab切換。
 * API Definition -- TabNavigator(RouteConfigs, TabNavigatorConfig)。
 *
 * RouteConfigs -- 和StackNavigator的RouteConfigs一樣,可以看上一篇文章(React Navigation--StackNavigator 詳細的例子http://blog.csdn.net/yibing2011/article/details/71195316
)。 * * TabNavigatorConfig -- * 1. tabBarComponent - component to use as the tab bar, * e.g. TabBarBottom (this is the default on iOS), * TabBarTop (this is the default on Android) * 2. tabBarPosition - position of the tab bar, can be 'top' or 'bottom' * 3. swipeEnabled - whether to allow swiping between tabs * 4. animationEnabled - whether to animate when changing tabs * 5. lazy - whether to lazily render tabs as needed as opposed to rendering them upfront * 6. tabBarOptions - configure the tab bar. * tabBarOptions for TabBarBottom (default tab bar on iOS): * (1) activeTintColor - label and icon color of the active tab * (2) activeBackgroundColor - background color of the active tab * (3) inactiveTintColor - label and icon color of the inactive tab * (4) inactiveBackgroundColor - background color of the inactive tab * (5) showLabel - whether to show label for tab, default is true * (6) style - style object for the tab bar * (7) labelStyle - style object for the tab label * Example: * tabBarOptions: { * activeTintColor: '#e91e63', * labelStyle: { * fontSize: 12, * }, * style: { * backgroundColor: 'blue', * }, * } * tabBarOptions for TabBarTop (default tab bar on Android): * (1) activeTintColor - label and icon color of the active tab * (2) inactiveTintColor - label and icon color of the inactive tab * (3) showIcon - whether to show icon for tab, default is false * (4) showLabel - whether to show label for tab, default is true * (5) upperCaseLabel - whether to make label uppercase, default is true * (6) pressColor - color for material ripple (Android >= 5.0 only) * (7) pressOpacity - opacity for pressed tab (iOS and Android < 5.0 only) * (8) scrollEnabled - whether to enable scrollable tabs * (9) tabStyle - style object for the tab * (10)indicatorStyle - style object for the tab indicator (line at the bottom of the tab) * (11)labelStyle - style object for the tab label * (12)iconStyle - style object for the tab icon * (13)style - style object for the tab bar * Example: * tabBarOptions: { * labelStyle: { * fontSize: 12, * }, * style: { * backgroundColor: 'blue', * }, * } * 7. initialRouteName - The routeName for the initial tab route when first loading * 8. order - Array of routeNames which defines the order of the tabs * 9. paths - Provide a mapping of routeName to path config, which overrides the paths set in the routeConfigs. * 10.backBehavior - Should the back button cause a tab switch to the initial tab? If yes, set to initialRoute, * otherwise none. Defaults to initialRoute behavior. * * Screen Navigation Options -- * 1. title - Generic title that can be used as a fallback for headerTitle and tabBarLabel * 2. tabBarVisible - True or false to show or hide the tab bar, if not set then defaults to true * 3. tabBarIcon - React Element or a function that given { focused: boolean, tintColor: string } * returns a React.Element, to display in tab bar * 4. tabBarLabel - Title string of a tab displayed in the tab bar or React Element or a function that given * { focused: boolean, tintColor: string } returns a React.Element, to display in tab bar. * When undefined, scene title is used. To hide, see tabBarOptions.showLabel in the previous section. * * * Navigator Props -- * The navigator component created by TabNavigator(...) takes the following props: * 1. screenProps - Pass down extra options to child screens and navigation options, for example: * const TabNav = TabNavigator({ * // config * }); * <TabNav screenProps={ * // this prop will get passed to the screen components as this.props.screenProps * } * /> */ import React from 'react'; import { Button, ScrollView, Text, StyleSheet, } from 'react-native'; import { TabNavigator, } from 'react-navigation'; class MyHomeScreen extends React.Component { static navigationOptions = { tabBarLabel: 'Home', // Note: By default the icon is only shown on iOS. Search the showIcon option below. tabBarIcon: ({tintColor}) => ( <Image source={require('./img/notif-icon.png')} style={[styles.icon, {tintColor: tintColor}]} /> ), }; render() { return ( <Button onPress={() => this.props.navigation.navigate('Notifications')} title="Go to notifications" /> ); } } class MyNotificationsScreen extends React.Component { static navigationOptions = { tabBarLabel: 'Notifications', tabBarIcon: ({tintColor}) => ( <Image source={require('./img/notif-icon.png')} style={[styles.icon, {tintColor: tintColor}]} /> ), }; render() { return ( <Button onPress={() => this.props.navigation.goBack()} title="Go back home" /> ); } } const styles = StyleSheet.create({ icon: { width: 26, height: 26, }, }); const SimpleTabNavigator = TabNavigator( { Home: { screen: MyHomeScreen, }, Notifications: { screen: MyNotificationsScreen, }, }, { tabBarOptions: { activeTintColor: '#ff00ff', }, } ); export default SimpleTabNavigator;




相關推薦

React Navigation--TabNavigator 詳細例子

/** * Created by YiBing on 2017/5/5. * 本程式效果:類似Android中的ViewPager--有2個頁面,可以隨手勢來回切換,也可以點選Tab切換。 *

React Navigation--Stack Navigator 詳細例子

/** * Created by YiBing on 2017/5/5. * * 一個StackNavigator詳細的例子,效果:1個主頁面,2個子頁面,每個頁面有三個按鈕,可以跳轉到相應的頁面。 * * React Navigation -- StackNav

react-navigation之StackNavigator使用方法及附上超級詳細樣例程式碼

react-navigation 之 StackNavigator 網上雖說有很多篇關於react-navigation的使用說明的文章和部落格,不過我找了大半天也不見詳細具體的使用方法,大部分都是介紹種種屬性的,為此鄙人自告奮勇,整理了一份比較詳細的有關react-nav

react-navigationTabNavigator使用

1、效果圖: index.android.js: /** * Sample React Native App * https://github.com/facebook/react-native

關於react-navigationTabNavigator(舊版)createBottomTabNavigator(新版)重新整理問題

有人說用DeviceEventEmitter解決: 我怎麼感覺不靠譜呢!!! 有人問過同樣的問題: 問題解決: 解決: componentDidMount() {          this.subs = [this.props.navigatio

ReactNative基礎(六)使用react-navigation實現頁面導航佈局效果(TabNavigator)

此部落格基於react-native-0.49.3 上一篇介紹了一下react-navigation依賴庫中的StackNavigator 這篇文章就接著上一篇繼續往下說也就是依賴庫中的第二個導航欄TabNavigator相當於Android中的Tab

jQuery上傳插件Uploadify 3.2在.NET下的詳細例子

formdata 高度 jpg javascrip summary ride ocl ready onclick 項目中要使用Uploadify 3.2來實現圖片上傳並生成縮略通的功能,特此記下來,以供各位參考! Uploadify下載地址:http://www.uploa

react-navigation android 導航標題居中

mmu github tile reac oid comm and roi image 先貼下代碼供參考: 安卓默認導航的titile 是在左側的,為了和iOS保持一致,需要添加 alignSelf:‘center‘,這個 屬性 但是會遇到title有點偏右的情況 添

react navigation傳值給上一頁面

reac 組件 .get value cto oba info state getpara 使用新的導航組件react navigation,傳值方式略微發生了一些改變 A頁面到B頁面 pushaddremark(){ let _this=this;

react-navigation

ret enable ons mil 滑動切換 定義 使用 one animation TabNavigator的使用   定義一個整體的tab屬性 import {TabNavigator,StackNavigator,TabBarBottom} from ‘re

Linux crontab 命令格式與詳細例子

linux c 編輯 行程 目前 一封信 列表 art 表示 能夠 基本格式 : *  *  *  *  *  command 分 時 日 月 周 命令 第1列表示分鐘1~59 每分鐘用*或者 */1表示 第2列表示小時1~23(0表示0點) 第3列表示日期1~31 第4

React Navigation-(Qucik Start)快速開始

const 例如 json 抽屜 開始 新的 ans tail pos 快速開始 要開始使用React Navigation,您只需安裝 react-navigation npm包 npm install --save react-navigation yarn add

react-native導航器 react navigation 介紹

開發環境搭建 部署 ica sam native 找不到 組件 getting start 開發環境搭建好之後,想要進一步了解react-native,可以先從react-native官網上的電影列表案例入手: https://reactnative.cn/docs/0

react-navigation 簡介

tor 方式 一個 justify 深度 哪些 區別 view avi StackNavigator: 原理和瀏覽器相似但又有局限,瀏覽器的方式是開放性的,通過點擊一個鏈接可以跳轉到任何頁面(push),點擊瀏覽器後退按鈕,返回到前一個頁面(pop)。StackNavig

react-navigation 導航、路由

outer dsta one erp 頁面設置 png stack raw params 1,首先,下載,安裝,引入react-navigation  npm install --save react-navigation  或者 yarn add rea

react-navigation設置navigationOptions中Static中使用 this 的方法

IT 需要 target style ati ams screen AR 操作 使用react-navigation時,單頁面設置navigationOptions中,進行Static中 調用this 中的方法或值時,需要做如下操作 static naviga

關於萬金6.0源碼下載numpy.tile()的重要特性,以及使用方法,超級詳細例子!!!和使用介紹

函數 函數功能 *** 轉換成 ref 在一起 imp 復制。 lis 函數功能萬金6.0源碼下載dsluntan.com 企娥3393756370:按照各個方向復制。 先介紹特性在介紹使用方法 特性之一:對於列表和數組,使用該方法後都會變成數組;對於矩陣,屬性不變還是矩陣

react-navigation學習筆記(一)

法則 gate avi 學習 之前 navi 路由 存在 是否 1.關於this.props.navigation.navigate()與this.props.navigation.push()的區別 navigate方法在跳轉時會在已有的路由棧中查找是否已經存在該值,若存

React-Native開發十 react-navigation開發中的一些常見的坑

1 前言 都說RN開發效率高,一次學習隨處編寫。真的用RN開發了一個APP才知道,RN中坑真是太多,特別是很多坑只有在生產模式下才會出現,在平常的debug模式下,APP執行好好的,但是你一旦打正式包,就會發現各種報錯,各種崩潰,如果在Android平臺下,各種相容性,各種奇葩的問題

React-Native開發九 react-navigation之Android的打包與釋出

1前言 RN的開發中正式釋出前需要打包與簽名,然後才能上架各家應用市場。打包需要將js與圖片資原始檔打包進apk檔案中,生成index.android.bundle與index.android.bundle.meta檔案。下面介紹RN開發中打包APK的主要步驟,IOS沒研究過,不再本