微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

什么是AccessibilityInfo.setAccessibilityFocus(reactTag)方法中的reactTag参数? React native documentation不提供有关此参数的任何信息:

Set accessibility focus to a React component. On Android, this is equivalent
to UIManager.sendAccessibilityEvent(reactTag,
UIManager.AccessibilityEventTypes.typeViewFocused);.

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

解决方法:

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>
        )
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐