2016-05-02 3 views
5

В приложении настройки, если я дважды нажимаю на строку «Общие». Он подталкивает общий контроллер представления. Затем он говоритКак получить голос зачитывать заголовок при нажатии контроллера нового вида?

"Общий"

(имя текущего контроллера представления)

Тогда

"Настройка, задняя кнопка"

(Название выбранного элемента)

Однако в мое приложение с обычаем self.navigaitonItem.titleView это говорит только

«Home, Back Button»

Как заставить его зачитывает название экрана? (Я устал устанавливать self.title)

ответ

0

Я не тестировал его, но вам может потребоваться проверить свойство accessibilityLabel для представления. Из документации:

По умолчанию стандартные элементы управления и представления UIKit имеют метки, которые являются их названиями. Однако, если вы предоставляете собственный элемент управления или представление, вам необходимо соответствующим образом установить это свойство, чтобы вспомогательные приложения могли предоставлять точную информацию пользователям с ограниченными возможностями.

+0

Это хороший момент, но 'titleView' является простым' UILabel' так 'accessibilityLabel' устанавливается автоматически. Если я коснусь названия заголовка, он правильно его прочитает. Я начинаю думать, что это ошибка iOS, но я не могу найти подходящее обходное решение. – Robert

+0

Возможно, название задано после нажатия? попробуйте инициализировать методы, чтобы установить заголовок. – cekisakurek

+0

Nope - did not work .. Я думаю, что заголовок читается, когда на экране появляется представление. – Robert

0
- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 

    // replace "nb" with your custom view & try 
    UINavigationBar *nb = self.navigationController.navigationBar; 
    // default is NO 
    nb.isAccessibilityElement = YES; 
    // exactly Value, not Label 
    nb.accessibilityValue = @"my navigation bar ztx"; 
    // set similar traits 
    nb.accessibilityTraits = UIAccessibilityTraitStaticText; 
} 
Смежные вопросы