2013-07-10 2 views
-1

У меня есть два контроллера вида. В одном контроллере представления я получаю данные в NSMutableArray. Я хочу обновить значение значка контроллера второй строки (второй), когда я нахожусь в своем первом контроллере представления.Как обновить значение UITabbar badgevalue после получения данных в массиве?

Скажите, пожалуйста, как это сделать.

Я пробовал использовать NSNotification, но не удалось.

+0

Оба ViewController в TabBar? – Dilip

+0

yup. есть два диспетчера представлений для двух отдельных вкладок. – kunj1986

+0

K проверить мой код и сообщить мне, если вы его получите или получили ошибку. – Dilip

ответ

0

Попробуйте что-то вроде этого

NSMutableArray *sourceArray = @"Your value--------"; 
    int indexICareAbout = 2; 
      NSString *badgeValue = [sourceArray objectAtIndex:2]; 

      [[[[[self tabBarController] viewControllers] 
      objectAtIndex: indexICareAbout] tabBarItem] setBadgeValue:badgeValue]; 
+0

i'av попробуйте это, но не работает :( – kunj1986

+0

отправьте свой код – Vinodh

1

Пусть ваш ViewController, где вы хотите установить знак, находится на 2-е место, чем поместить этот код, когда ваш массив получить значение.

Поместите этот код в вас первый ViewController

UIViewController * vc1 = [self.tabBarController.viewControllers objectAtIndex:1]; 
[vc1.tabBarItem setBadgeValue: @"Dilip"]; 
+0

Пожалуйста, используйте 1 в объектеAtIndex, потому что начало любого массива будет от 0. – iEinstein

+0

@AshutoshMishra просто опечатка, чем для указания. – Dilip

+1

@ Dilip-don't worry ;) – iEinstein

Смежные вопросы