React Native-AccessibilityInfo.setAccessibilityFocus()中的reactTag参数是什么?

Sta*_*low 4 android ios react-native

什么是reactTag参数AccessibilityInfo.setAccessibilityFocus(reactTag)的方法?React本机文档不提供有关此参数的任何信息:

将可访问性焦点设置为React组件。在Android上,这等效于UIManager.sendAccessibilityEvent(reactTag,UIManager.AccessibilityEventTypes.typeViewFocused);。

我没有Objective-C和的背景Java。一个小例子将不胜感激。谢谢 !!!

Mo *_*ani 6

reactTag是一个简单的数字,react用于标识应用程序中的视图对象。它是findNodeHandle函数的结果,它以视图引用作为参数。

这是一个有关如何使用它的简单示例:

import React, {Component} from 'react'
import {
  ...
  findNodeHandle,
  ...
} from 'react-native';

class Sample extends React.Component {
    constructor(props) {
        super(props)
        this.viewRef = null;
    }

    ...

    componentDidMount() {
        if (this.viewRef) {
            const reactTag = findNodeHandle(this.viewRef);
            AccessibilityInfo.setAccessibilityFocus(reactTag);
        }
    }

    render() {
        return (
            <View ref={el => { this.viewRef = el }}>
                ...
            </View>
        )
    }
}
Run Code Online (Sandbox Code Playgroud)