我正在改進我的iOS項目的輔助功能,並使用UINavigationController。 我的UINavigationItem有兩個按鈕,左邊是「取消」。UINavigationController和UINavigationItem的輔助功能
默認情況下,顯示視圖時取消按鈕被選中。 用戶聽到的第一件事就是「取消」。
我真正想要的是,標題應選擇和口語,以及 取消按鈕應該無法選擇。
問題:
- 這是應該的,而且可能是什麼原因呢?
- 是否有人成功取消選擇了該按鈕,而是選擇了標題?
謝謝, 克拉斯
我正在改進我的iOS項目的輔助功能,並使用UINavigationController。 我的UINavigationItem有兩個按鈕,左邊是「取消」。UINavigationController和UINavigationItem的輔助功能
默認情況下,顯示視圖時取消按鈕被選中。 用戶聽到的第一件事就是「取消」。
我真正想要的是,標題應選擇和口語,以及 取消按鈕應該無法選擇。
問題:
謝謝, 克拉斯
Apple's UIAccessibility Guide來自:
UIAccessibilityLayoutChangedNotification - 發佈者應用程序時的畫面變化的佈局,當一個元件出現或消失,例如。此通知包含一個參數,該參數是VoiceOver說的NSString對象或VoiceOver移動到的可訪問性元素。
所以,你可以做這樣的事情:
- (void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:animated];
UIAccessibilityPostNotification(UIAccessibilityLayoutChangedNotification,title);
}
,就應該替換「標題」與你想要的實際可訪問性元素上面的代碼中進行選擇,併發言。
您還可以使用UIAccessibilityScreenChanged代替UIAccessibilityLayoutChanged「當一個新的觀點看來,包括屏幕的主要部分」。
感謝您的回答。我已經試過了,甚至將左邊的按鈕的特徵位置零。沒有運氣。這似乎是一個很難改變的默認行爲。 – claxclinton 2013-04-29 15:20:50
這是默認行爲,但不難改變。我正在使用我發佈的代碼,在類似情況下也沒有問題(navigationcontroller)。無論左側按鈕的特徵是什麼,通知強制將焦點轉換爲您傳遞的元素作爲參數)。我只是在上面輸入「標題」,但是你必須改變它到你的應用中正確的元素。例如,它可能是「self.title」或類似的東西。 – user1459524 2013-04-29 23:05:19
謝謝,user1459524! 它工作正常。有點好奇,爲什麼它必須在視角出現後才能完成。 但是沒關係。無論什麼作品。 再次感謝。 – claxclinton 2013-05-02 09:00:06