Iphone 加上「;“详细信息视图”;查看
我有一个带多个视图控制器的UITabbar。其中之一是UITableView。tableview存储在nib中,其中文件所有者是UITableViewController 我希望在选择表格单元格后,tableview显示“详细视图”(带有UILabel和一些其他元素的自定义视图)。我的方法是将新的详细信息视图作为子视图添加到UITableView:Iphone 加上「;“详细信息视图”;查看,iphone,uitableview,uiview,Iphone,Uitableview,Uiview,我有一个带多个视图控制器的UITabbar。其中之一是UITableView。tableview存储在nib中,其中文件所有者是UITableViewController 我希望在选择表格单元格后,tableview显示“详细视图”(带有UILabel和一些其他元素的自定义视图)。我的方法是将新的详细信息视图作为子视图添加到UITableView: [self.view addSubView:[detailsViewController view]] 不幸的是,这并没有产生我想要的效果。作为U
[self.view addSubView:[detailsViewController view]]
不幸的是,这并没有产生我想要的效果。作为UITableView的子视图,我可以滚动到added details视图之外,查看底层的表条目。UINavigationBar是一个选项,但由于没有更深层的层次结构,我更喜欢带有关闭按钮的简单自定义视图。有什么建议吗?用UIViewController替换UITableViewController。然后将UITableView添加到视图控制器。将表视图的委托和数据源设置为视图控制器。 现在,您可以在非滚动视图控制器中添加子视图,但仍保留tableview:) 编辑: 或者,当弹出视图出现时,您可以停止tableview的滚动
[(UIScrollView *)self.view setScrollEnabled:NO];
CGRect rect = self.popupview.frame;
rect.origin.y = [(UIScrollView *)self.view contentOffset].y;
self.popupview.frame = rect;
如果您只是想在用户单击特定单元格时创建弹出窗口(模式视图)],请执行以下操作
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
// If the view you want to present modally is called DetailViewController, do the following.
DetailViewController *dvCon = [[dvCon alloc] initWithNibName:@"DetailViewController" bundle:nil];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:dvCont];
[self presentModalViewController:navigationController animated:YES];
[navigationController release];
[dvCont release];
}
祝你好运 那么,你想要一个“细节视图”,比如一个包含关闭按钮的弹出视图?或者您想要使用UINavigationController方法的详细视图控制器?但是如何返回到DetailViewController中的rootViewController?您需要在某个地方实现一个按钮,通常在UINavigationBar中实现(因此创建UIBarButtonItem并将其设置为self.navigationItem.leftBarButton)并将按钮的选择器设置为取消模式视图的方法。如果需要,我可以用代码更新我的答案。