2017-06-19 7 views
1

NSTouchBarのアイテムは、A、B、C、Dの4つのアイテムを持つNSSegmentedControlのアイテムを持っています。視力を持つ人にとっては、VoiceOverを使用する人にとっては「A」、「B」、「C」、「D」という言葉は素晴らしいことではありません。彼らは正確に何をするのか理解できないかもしれないので、アクセシビリティのタイトルを「Select A」 、 "Perform B"、 "Cを開く"、 "Show D"を選択します。NSSegmentedControlのセグメントのカスタムアクセシビリティ

私の知る限りでは、NSSegmentedControlは、カスタムアクセシビリティのタイトルを設定する上の任意のメソッドを持っていないので、私は深く掘ってきた - セグメントごとに、サブビュー作成しているようです(NSSegmentItemViewを、それは重要ではありません) - 私は「しようとしたVEの:isAccessibilityElementを設定

  • trueにセグメント化されたコントロール自体
  • にサブビューごとに、私もtrueにそれを設定した、と私は、アクセシビリティのタイトル、ラベルを設定しようとしました、 ...ほんとうに助ける何か。

残念ながら、私が残しておきたいことは何でも設定でき、VoiceOverはそれを無視します。この問題は、アクセシビリティインスペクタがタッチバーウィンドウで機能しないという事実によって複雑になります...

誰にもアイデアはありますか?

答えて

0

私は同様のことをやろうとしていましたが(NSSegmentedControlのカスタム修正でアクセシビリティを再実装しました)、私はほとんどNSAccessibilityProtocolメソッドのいくつかをオーバーライドすることで成功しました。

accessibilityChildrenをオーバーライドして、異なるラベルを提供するカスタム要素を返すことができます。

+0

ありがとうございます!アクセシビリティの子供をオーバーライドするオプションについては間違いなく忘れてしまった! –

関連する問題