我尝试找到一个解决方案,从tablview中查看和编辑项目。 我的应用程序基于UITabBarController。
每个Bar项都包含一个带有几个UIViews的类。 这是UITabBarController的第一项。
我完成了Apple示例代码中的Add事件:SimpleEKDemo。添加活动没有任何问题。
我尝试将View和Edit部分添加到代码中。我可以从tableView中选择一个项目来编辑所选项目。 但在我尝试将SimpleEKDemo中的代码添加到我的代码后,我意识到我必须将UINavigationController添加到工具中。所以我做到了。
我添加它后,它来到了UITabBarController的项目。此外,我甚至添加事件都没有很好地工作(我无法插入事件名称和位置。但编辑工作。
所以我需要知道: 1-是否可以在不使用UINavigationController的情况下实现编辑/查看。 如果是,请告诉我一个示例代码。
2-如果我必须使用UINavigationController。 因为我不需要UINavigationController成为第一页,我不需要在我的应用程序中添加任何栏。当我选择tableView项目时,它是否可能出现在应用程序中,但看起来很相似!
快照: https://public.me.com/alish(pict.zip)
答案 0 :(得分:0)
上周我一直在研究这个问题。最后,我从苹果公司的IOS文件中得到了答案。 它建议使用一个UIViewController作为屏幕。
这是apple的ios文档(link text)的一些指南: 注意:如果要将视图层次结构划分为多个子区域并分别管理每个子区域,请使用通用控制器对象(从NSObject降序的自定义对象)而不是视图控制器对象来管理每个子区域。然后使用单个视图控制器对象来管理通用控制器对象。
我的解决方案:
1.为子视图定义xib文件bookController.xib以管理书籍
2.创建一个自定义控制器(继承NSObject)BookController
3.将文件所有者设置为bookController.xib中的BookController
4.通过从xib文件加载并与自定义控制器对象关联来创建视图
BookController * bookController = ...
UIView * bookView = [[[NSBundle mainBundle] loadNibNamed:@“bookView”owner:bookController options:nil] objectAtIndex:0];
5.通过添加视图来切换视图以显示根控制器的视图作为子视图
帮助你帮助你
//创建客户控制器 OneCategoryNavigationController * oneBookCategory = [[OneCategoryNavigationController alloc] initWithOrientation:orientation];
UIView * cellContentView = [[[NSBundle mainBundle] loadNibNamed:@“OneCategoryBookNavigationView”owner:oneBookCategory options:nil] objectAtIndex:0];
//加载xib文件后加载图书缩略图 [oneBookCategory loadBookThumbnails];
//将视图添加到超级视图
[self.view addSubview:cellContentView];