Отключить панель кнопок цвет текста меняется на белый?

Ниже приведено изображение моей панели навигации, где кнопка правой панели отключена. но когда я отключаю его, его текст меняется на белый цвет. я не хочу белого цвета. Любое решение этого.

Первое изображение, когда кнопка "Изменить" включена. Другое, когда кнопка "Редактировать" отключена. Можем ли мы отключить кнопку без изменения цвета ее текста в этом случае. Спасибо заранее

это для настройки кнопки панели

 [[UIBarButtonItem appearance] setTintColor:[UIColor colorWithRed:253.0/255.0 green:220.0/255.0 blue:135.0/255.0 alpha:1.0]];


[[UIBarButtonItem appearance] setTitleTextAttributes:
 [NSDictionary dictionaryWithObjectsAndKeys:
  [UIColor blackColor], UITextAttributeTextColor,
  [UIColor colorWithRed:1.0 green:1.0 blue:1.0 alpha:1.0], UITextAttributeTextShadowColor,
  [UIFont fontWithName:@"MyriadPro-Cond_0" size:16.0], UITextAttributeFont, nil]
                                            forState:UIControlStateNormal];

это для кнопки бара

 UIBarButtonItem *rightBarBtnEdit=[[UIBarButtonItem alloc] initWithTitle:@"Edit" style:UIBarButtonItemStyleBordered target:self action:@selector(methodEdit:)];
[rightBarBtnEdit setTag:701];
[self.navigationItem setRightBarButtonItem:rightBarBtnEdit];

это отключает

    self.navigationItem.rightBarButtonItem.enabled = NO;

1 ответ

Решение

setTitleTextAttributes:forState: должен вызываться несколько раз, для каждого состояния, которое вы хотите настроить. На данный момент вы звоните один раз, для UIControlStateNormalдля других состояний значения будут по умолчанию.

Позвони с UIControlStateDisabled а также с любыми атрибутами, которые вам нужны.

Другие вопросы по тегам