(iOS)點選cell推出現新介面

weixin_33907511發表於2016-09-01

可能是以前比較菜,UITableVeiw點選cell的時候我會用switch 根據點選的row來判斷點選的哪行然後初始化,

懶是程式猿的美德,我看一點都沒錯,我這些天在研究百度地圖,然後我看到了一個非常有用的方法,就一下子吧我的一個個初始化的問題解決了,過來圍觀一下吧

舉個例子

是這樣的人家把所有的要推出來的ViewController名 寫在陣列裡面了

_viewControllerArray = [[NSArray alloc]initWithObjects:

@"MapViewBaseDemoViewController",

@"MultiMapViewDemo",

@"MapViewDemoViewController",

nil];

然後在didSelectRow裡面這樣子

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {

                UIViewController* viewController = nil;

                if (indexPath.row < 19 && indexPath.row != 12) {

                        //手敲版的

                         viewController = [[NSClassFromString([_viewControllerArray objectAtIndex:indexPath.row])  alloc]  init];

                 } else {

                      //stb(UIStoryboard)版的

                      viewController = [[UIStoryboard storyboardWithName:@"Storyboard" bundle:nil] instantiateViewControllerWithIdentifier:[_viewControllerArray objectAtIndex:indexPath.row]];

               }

             //設定返回按鈕

              UIBarButtonItem *customLeftBarButtonItem = [[UIBarButtonItem alloc] init];

              customLeftBarButtonItem.title = @"返回";

              self.navigationItem.backBarButtonItem = customLeftBarButtonItem;

              [self.navigationController pushViewController:viewController animated:YES];

}

真想親一口百度程式猿歐巴...

相關文章