【React Native】文件翻譯閱讀紀錄 - APIs - AccessibilityInfo

by - 上午9:00

Facebook Open Source React Native



AccessibilityInfo

有時,了解設備是否具有當前活動的屏幕閱讀器是有用的。 AccessibilityInfo API專為此目的而設計。您可以使用它來查詢屏幕閱讀器的當前狀態,以及註冊以在屏幕閱讀器狀態發生變化時收到通知。

這是一個說明如何使用AccessibilityInfo的小例子:

class ScreenReaderStatusExample extends React.Component {
  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 (
      <View>
        <Text>
          The screen reader is{' '}
          {this.state.screenReaderEnabled ? 'enabled' : 'disabled'}.
        </Text>
      </View>
    );
  }
}

Methods


參考

Methods

fetch()

static fetch()
查詢當前是否啟用了屏幕閱讀器。返回一個解析為布爾值的promise。啟用屏幕閱讀器時結果為true,否則為false。

addEventListener()

static addEventListener(eventName, handler)
添加事件處理程序。支持的活動:
  • change: 屏幕閱讀器狀態更改時觸發。事件處理程序的參數是一個布爾值。啟用屏幕閱讀器時布爾值為true,否則為false。
  • announcementFinished: 僅限iOS的活動。屏幕閱讀器完成發布後觸發。事件處理程序的參數是包含以下鍵的字典:
    • announcement: 屏幕閱讀器宣布的字符串。
    • success: 一個布爾值,指示是否成功發布了通知。

setAccessibilityFocus()

static setAccessibilityFocus(reactTag)
IOS的而已。將可訪問性焦點設置為反應組件。

announceForAccessibility()

static announceForAccessibility(announcement)
IOS的而已。發布要由屏幕閱讀器宣布的字符串。

removeEventListener()

static removeEventListener(eventName, handler)
刪除事件處理程序。



You May Also Like

0 意見