gpt4 book ai didi

ios - UIAccessibilityElement TraitAdjustable

转载 作者:行者123 更新时间:2023-12-01 22:47:32 33 4
gpt4 key购买 nike

我为两个基于框架的可访问性元素创建了一个容器,这些元素是在自定义 uiview 中使用核心图形绘制的。

我想要这两个元素,在这种情况下是两个光标,来响应一根手指的上下滑动,所以我使用特征 UIAccessibilityTraitAdjustable .

我已经实现了 Apple 文档中描述的协议(protocol)。我可以选择这两个元素,但单指滚动似乎没有调用 accessibilityIncrementaccessibilityDecrement .有什么我错过的吗?

-(NSArray *)accessibleElements 
{
if (_accessibleElements != nil) {
return _accessibleElements;
}

_accessibleElements = [[NSMutableArray alloc] init];

//add left cursor
UIAccessibilityElement *lcursorEl = [[UIAccessibilityElement alloc]
initWithAccessibilityContainer:self];
lcursorEl.accessibilityFrame = [self convertRect:_lcursorFrame
toView:nil];
lcursorEl.accessibilityLabel = NSLocalizedString(@"Left Cursor", nil);
lcursorEl.accessibilityTraits = UIAccessibilityTraitAdjustable;
[_accessibleElements addObject:lcursorEl];

//add right cursor

UIAccessibilityElement *rcursorEl = [[UIAccessibilityElement alloc]
initWithAccessibilityContainer:self];
rcursorEl.accessibilityFrame = [self convertRect:_rcursorFrame
toView:nil];
rcursorEl.accessibilityLabel = NSLocalizedString(@"Right Cursor", nil);
//rcursorEl.accessibilityTraits = UIAccessibilityTraitAdjustable ;
[_accessibleElements addObject:rcursorEl];

return _accessibleElements;
}


#pragma mark accessible elements protocol methods

- (NSInteger)accessibilityElementCount
{
return [[self accessibleElements] count];
}

- (id)accessibilityElementAtIndex:(NSInteger)index
{
return [[self accessibleElements] objectAtIndex:index];
}

- (NSInteger)indexOfAccessibilityElement:(id)element
{
return [[self accessibleElements] indexOfObject:element];
}

- (BOOL)isAccessibilityElement
{
return NO;
}

-(void)accessibilityIncrement
{
NSLog(@"Adjusting Inc");
}

-(void)accessibilityDecrement
{
NSLog(@"Adjusting dec");
}

最佳答案

由于您正在创建的可访问性元素上设置可调整特征,因此 accessibilityIncrementaccessibilityDecrement将在这些元素上而不是在您的 Controller 上被调用。这就是为什么您没有看到任何回调的原因。

相反,你可以继承 UIAccessibilityElement并在那里实现递增和递减方法。

关于ios - UIAccessibilityElement TraitAdjustable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17347840/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com