弹出窗口中的导航控制器

use*_*918 5 dynamic uitableview ipad uipopovercontroller

我是ipad应用程序开发的新手.

我有兴趣创建一个应用程序,我有一个popover显示带有项目列表的tableview.然后我选择一个项目,并且视图钻到另一个由另一个项目列表和导航后退按钮组成的tableview.

我将深入挖掘的水平是动态的.

请指导我提供适当的资源来帮助我解决问题.

Ham*_*abi 5

我以前做过,效果很好!只需将此函数分配给按钮(可能是UIBarButtonItem):

UIPopoverController *popover;
bool isPopoverOpen = false;
-(void)openPopover{
    if(!isPopoverOpen){
        FirstViewController *firstViewCtrl = [[PartsViewCtrl alloc] init];
        UINavigationController *navbar = [[UINavigationController alloc] initWithRootViewController:firstViewCtrl];
        [firstViewCtrl release];
        navbar.contentSizeForViewInPopover = CGSizeMake(TABLE_WIDTH, TABLE_HEIGHT);
        popover = [[UIPopoverController alloc] initWithContentViewController:navbar];
        [navbar release];
        popover.delegate = self;
        popover.popoverContentSize = CGSizeMake(TABLE_WIDTH, TABLE_HEIGHT);
        [popoverOnPartsView presentPopoverFromBarButtonItem:barButtonItem permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
        isPopoverOpen = true;
    }else{
        [popover dismissPopoverAnimated:YES];
        [popover release];
        isPopoverOpen = false;
    }
}
Run Code Online (Sandbox Code Playgroud)

并将此函数实现到具有UITableView的FirstViewController:

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
    SecondViewController *secondViewController = [[SecondViewController alloc] init];
    [self.navigationController pushViewController:secondViewController animated:YES];
    [secondViewController release];
}
Run Code Online (Sandbox Code Playgroud)

现在,您可以向SecondViewController添加UITableView.并将此场景用于其他表格!

我希望这个对你有用!