我有一个 React-Native 应用程序。我为启用旁白辅助功能的情况为一个屏幕制作了替代视图。我使用AccessibilityInfo做了这个。但是我不知道如何检查是否启用了切换控制辅助功能。可能吗?谢谢。
这样检查:
AccessibilityInfo.fetch().then((isEnabled) => {
this.setState({
screenReaderEnabled: isEnabled,
});
});
在此处阅读文档:https://facebook.github.io/react-native/docs/accessibilityinfo
我根据这个文档创建了一个本机模块:
https://facebook.github.io/react-native/docs/native-modules-ios
#import "RNAccessibilityManager.h"
#import <UIKit/UIKit.h>
@interface RNAccessibilityManager ()
@end
@implementation RNAccessibilityManager
RCT_EXPORT_MODULE();
RCT_EXPORT_METHOD(getCurrentSwitchControlState:(RCTResponseSenderBlock)callback)
{
callback(@[@(UIAccessibilityIsSwitchControlRunning())]);
}
@end
手动链接并像这样使用:
import RNAccessibilityManager from 'react-native-accessibility-manager'
RNAccessibilityManager.getCurrentSwitchControlState((isEnabled) => {
this.setState({
switchControlEnabled: isEnabled,
});
});