【问题标题】:Creating detail view content programmatically?以编程方式创建详细视图内容?
【发布时间】:2011-07-31 15:14:55
【问题描述】:
我正在制作一个使用 splitviewcontroller 的应用程序,它将包含 100 多个不同的内容。我想这样做,所以当我选择一行时,内容会动态变化。之前,我创建了 100 个 nib 文件和单独的视图控制器,然后才意识到效率低下。
当我选择一行时,我希望在详细视图中显示不同的标签。
作为指导,我使用的是苹果提供的 MultipleDetailViews 示例代码。
另外,如果有人可以帮助我了解如何设置前后按钮(更改表格视图内容),那就太好了!
【问题讨论】:
标签:
iphone
objective-c
uitableview
view
uisplitviewcontroller
【解决方案1】:
如果它们是相同的只是不同的标签视图,那么您可以创建一个包含所有常见元素的视图的单个 nib 文件,然后也许在 nib 中创建一个不包含在主视图中的小模板视图并且默认情况下是隐藏的,每次您切换到新页面时,您都可以使用您的模板视图来为您的页面构建字段。对于要显示的不同类型的字段,您还可以有几个不同的模板视图。要存储所有这些信息以驱动所有这些,您可以为每个页面创建简单的属性列表文件,其中包含字段标题、顺序、我的类型或宽度等信息。使用 [[NSBundle mainBundle] patterForResourceOfName:extension:]; 之类的方法很容易从您的应用程序包中获取属性列表文件的路径,使用属性列表可以轻松更改您的应用程序,甚至可以添加上传等功能新的笔尖,无需重新提交你的应用程序到苹果,只需定期搜索来自某些服务器的新属性列表文件,解析 PropertyList 文件也非常容易,NSDictionary 和 NSArray 都将它们序列化为属性列表。