日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
創(chuàng)新互聯(lián)React教程:iOS應(yīng)用程序狀態(tài)

AppStateIOS 可以告訴你應(yīng)用程序是在前臺(tái)還是在后臺(tái),而且狀態(tài)更新時(shí)會(huì)通知你。 在處理推送通知時(shí),AppStateIOS 經(jīng)常被用于判斷目標(biāo)和適當(dāng)?shù)男袨椤?/p>

創(chuàng)新互聯(lián)專注于黟縣企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站開發(fā),商城網(wǎng)站制作。黟縣網(wǎng)站建設(shè)公司,為黟縣等地區(qū)提供建站服務(wù)。全流程按需網(wǎng)站開發(fā),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)

iOS 應(yīng)用程序狀態(tài)

  • Active - 應(yīng)用程序在前臺(tái)運(yùn)行

  • Background - 應(yīng)用程序在后臺(tái)運(yùn)行。用戶正在使用另一個(gè)應(yīng)用程序或者在主屏幕上。

  • Inactive - 這是一種過(guò)渡狀態(tài),目前不會(huì)在React Native的應(yīng)用程序上發(fā)生。

想要獲取更多的信息,見 Apple's documentation

基本用法

為了查看當(dāng)前的狀態(tài),你可以檢查 AppStateIOS.currentState,該方法會(huì)一直保持最新狀態(tài)。然而,當(dāng) AppStateIOS在橋接器上檢索currentState時(shí),在啟動(dòng)時(shí)它將會(huì)為空。

    getInitialState: function() {
      return {
        currentAppState: AppStateIOS.currentState,
      };
    },    componentDidMount: function() {
      AppStateIOS.addEventListener('change', this._handleAppStateChange);
    },    componentWillUnmount: function() {
      AppStateIOS.removeEventListener('change', this._handleAppStateChange);
    },    _handleAppStateChange: function(currentAppState) {
      this.setState({ currentAppState, });
    },    render: function() {
      return (
       Current state is: {this.state.currentAppState}
      );
    },

這個(gè)例子似乎只能說(shuō)"當(dāng)前狀態(tài)是:活躍的"因?yàn)樵?nbsp;active 狀態(tài)時(shí),應(yīng)用程序只對(duì)用戶是可見的,空狀態(tài)只能是暫時(shí)的。

方法

static addEventListener(type: string, handler: Function)

通過(guò)監(jiān)聽 change 事件類型和提供處理程序,為應(yīng)用程序狀態(tài)變化添加一個(gè)處理程序。

static removeEventListener(type: string, handler: Function)

通過(guò)傳遞 change 事件類型和處理程序,刪除一個(gè)處理程序。

例子

Edit on GitHub

    'use strict';    var React = require('react-native');    var {
      AppStateIOS,
      Text,
    View
    } = React;    var AppStateSubscription = React.createClass({
      getInitialState() {        return {
          appState: AppStateIOS.currentState,
          previousAppStates: [],
        };
      },
      componentDidMount: function() {
        AppStateIOS.addEventListener('change', this._handleAppStateChange);
      },
      componentWillUnmount: function() {
        AppStateIOS.removeEventListener('change', this._handleAppStateChange);
      },
      _handleAppStateChange: function(appState) {        var previousAppStates = this.state.previousAppStates.slice();
        previousAppStates.push(this.state.appState);        this.setState({
          appState,
          previousAppStates,
        });
      },
      render() {        if (this.props.showCurrentOnly) {          return (            
              {this.state.appState}
            
          );
        }        return (          
            {JSON.stringify(this.state.previousAppStates)}
          
        );
      }
    });
    exports.title = 'AppStateIOS';
    exports.description = 'iOS app background status';
    exports.examples = [
      {
        title: 'AppStateIOS.currentState',
        description: 'Can be null on app initialization',
        render() { return {AppStateIOS.currentState}; }
      },
      {
        title: 'Subscribed AppStateIOS:',
        description: 'This changes according to the current state, so you can only ever see it rendered as "active"',
        render(): ReactElement { return ; }
      },
      {
        title: 'Previous states:',
        render(): ReactElement { return ; }
      },
    ];

本文標(biāo)題:創(chuàng)新互聯(lián)React教程:iOS應(yīng)用程序狀態(tài)
轉(zhuǎn)載來(lái)源:http://www.5511xx.com/article/cojsgcj.html