2016-02-01 2 views
0

У меня есть контроллер корневого представления A и контроллер табличного представления B. И когда пользователь выбирает строку в B, он открывает другой ViewController. Я пытаюсь сказать, что, когда в представлении таблицы присутствует только одна строка, она должна открываться непосредственно в этом ViewController. Данные поступают в формате JSON.Как программно перейти к tableViewController или viewController на основе условия

screenshot of app so far

+0

в своем желании, Вы можете обращаться в несколько строк также, это не проблема –

+0

Что я должен делать в делегатом, чтобы открыть его непосредственно. –

+0

ya obvisouly .... –

ответ

1
if(Option) 
    //NSLog(@"%@",Option); 
    { 
     if (Option.count==1) 
     { 
      NSDictionary *dict=(NSDictionary*)Option[0]; 
      NSString *action=[dict valueForKey:@"action"]; 
     if([action isEqualToString:@"m-deals-json"]) 
      { 
       UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"Main" 
                     bundle: nil]; 
       UINavigationController *n=[mainStoryboard instantiateViewControllerWithIdentifier:@"DealsNavigation"]; 
       DealsViewController *v=[mainStoryboard instantiateViewControllerWithIdentifier:@"DealsViewController"]; 
       v.dict=dict; 
       self.window.rootViewController = n; 
       [self.window makeKeyAndVisible]; 
      } 
     } 
     else 
     { 
      UINavigationController *n=[mainStoryboard instantiateViewControllerWithIdentifier:@"NavigationController"]; 
      OffersViewController *v=[mainStoryboard instantiateViewControllerWithIdentifier:@"OffersViewController"]; 
      self.window.rootViewController = n; 
      [self.window makeKeyAndVisible]; 
     } 
    } 
0

Вы можете управлять этим с чеком для вашего массива подсчитывать, с помощью которого вы отображаются данные в tableViewController называется B. Как, если он содержит только один объект, в этом случае просто нажать другую ViewController без дисплея tableViewController., и если массив содержит объекты более 1,, тогда отобразите tableViewController.

0

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

if(array.count==1) 
{ 
     ////push to view controller 
} 
else 
{ 
    ////push to tableview controller" 
} 
+0

@ChandanAnand Никто не сможет сказать вам, где его следует применять, не видя код. Отображение изображения для этого бессмысленно. Этого ответа более чем достаточно для того, чтобы вы могли работать с ним. Никто не собирается писать ваше приложение для вас –

+0

thanx получил ошибку и ее работу отлично. –

+0

приветствую брата .... –

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