中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

React Native中NavigatorIOS組件的簡單使用詳解

發布時間:2020-09-29 17:19:21 來源:腳本之家 閱讀:189 作者:王二追隨者 欄目:web開發

一、NavigatorIOS組件介紹

1,組件說明

使用 NavigatorIOS 我們可以實現應用的導航(路由)功能,即實現視圖之間的切換和前進、后退。并且在頁面上方會有個導航欄(可以隱藏)。

NavigatorIOS 組件本質上是對 UIKit navigation 的包裝。使用 NavigatorIOS 進行路由切換,實際上就是調用 UIKit 的 navigation。

NavigatorIOS 組件只支持 iOS 系統。React Native 還提供了一個 iOS 和 Android 都通用導航組件:Navigator。這個以后再說。

2,組件的屬性

(1)barTintColor:導航條的背景顏色
(2)initialRoute:用于初始化路由。其參數對象中的各個屬性如下:

{
 component: function, //加載的視圖組件
 title: string, //當前視圖的標題
 passPros: object, //傳遞的數據
 backButtonIcon: Image.propTypes.source, // 后退按鈕圖標
 backButtonTitle: string, //后退按鈕標題
 leftButtonIcon: Image.propTypes.soruce, // 左側按鈕圖標
 leftButtonTitle: string, //左側按鈕標題
 onLeftButtonPress: function, //左側按鈕點擊事件
 rightButtonIcon: Image.propTypes.soruce, // 右側按鈕圖標
 rightButtonTitle: string, //右側按鈕標題
 onRightButtonPress: function, //右側按鈕點擊事件
 wrapperStyle: [object Object] //包裹樣式
}

(3)itemWrapperStyle:為每一項定制樣式,比如設置每個頁面的背景顏色。
(4)navigationBarHiddent:為 true 時隱藏導航欄。
(5)shadowHidden:為 true 時,隱藏陰影。
(6)tintColor:導航欄上按鈕的顏色。
(7)titleTextColor:導航欄上字體的顏色。
(8)translucent:為 true 時,導航欄為半透明。

3,組件的方法

當組件視圖切換的時候,navigator 會作為一個屬性對象被傳遞。我們可以通過 this.props.navigator 獲得 navigator 對象。該對象的主要方法如下:
(1)pust(route):加載一個新的頁面(視圖或者路由)并且路由到該頁面。
(2)pop():返回到上一個頁面。
(3)popN(n):一次性返回N個頁面。當 N=1 時,相當于 pop() 方法的效果。
(4)replace(route):替換當前的路由。
(5)replacePrevious(route):替換前一個頁面的視圖并且回退過去。
(6)resetTo(route):取代最頂層的路由并且回退過去。
(7)popToTop():回到最上層視圖。

二、使用樣例

NavigatorIOS是React Native自帶的導航組件,下面是它的簡單應用。

初始化第一個場景

import PropTypes from 'prop-types';
import React, { Component } from 'react';
import { NavigatorIOS, Text } from 'react-native';
import { NextScene } from 'react-native';

export default class NavigatorIOSApp extends Component {
 render() {
  return (
   <NavigatorIOS
    initialRoute={{
     component: MyScene,
     title: '初始化第一個場景',
    }}
    style={{flex: 1}}
   />
  );
 }
}

class MyScene extends Component {
 static propTypes = {
  title: PropTypes.string.isRequired,
  navigator: PropTypes.object.isRequired,
 }

 _onForward = () => {
  this.props.navigator.push({
   component:NextScene
   title: '第二個場景'
  });
 }

 render() {
  return (
   <View>
    <Text>Current Scene: { this.props.title }</Text>
    <TouchableHighlight onPress={this._onForward}>
     <Text>前往下一個場景</Text>
    </TouchableHighlight>
   </View>
  )
 }
}

第二個場景

export default class NextScene extends Component {

 render() {
  return (
   <View>
    <Text>這是第二個場景</Text>
   </View>
  )
 }
}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

随州市| 永修县| 林芝县| 郎溪县| 靖边县| 安图县| 阿拉善右旗| 广灵县| 崇文区| 佛冈县| 广昌县| 沙河市| 封开县| 报价| 陆丰市| 砚山县| 芜湖市| 和顺县| 罗定市| 佛山市| 日喀则市| 香港| 赤水市| 塔城市| 江山市| 金门县| 亳州市| 新平| 内丘县| 尼玛县| 阳东县| 随州市| 游戏| 封丘县| 西贡区| 靖西县| 呼玛县| 榕江县| 贵溪市| 彝良县| 嫩江县|