【问题标题】:How do I create a view with a picker on the bottom and a table view on the top?如何创建底部有选择器和顶部有表格视图的视图?
【发布时间】:2010-03-27 02:36:10
【问题描述】:

第一次提问,长期潜伏。

我正在尝试创建一个 iPhone 视图,它在屏幕的下半部分有一个日期/时间选择器,在屏幕的上半部分有一个分组的单节四行表格视图(几乎与Apple 在他们的 View Controller Programming Guide 的图 2-4 中展示的那个(但从不继续解释)。

从概念上讲,我想我理解我需要的是一个带有一对子视图的主视图——一个用于选择器,一个用于表视图。我很确定一旦我在屏幕上显示了选择器功能,我就可以制作它,而且我很确定我也可以制作表格视图功能。我一生无法弄清楚的是如何以编程方式将两个视图同时显示在屏幕上。我可以在 Interface Builder 中完美地布置它,但是当我切换到 Xcode 时,一切都变糟了……视图与选择器一起出现,但没有表格视图。

在此先感谢您提供的任何帮助。

【问题讨论】:

    标签: iphone cocoa-touch uiview viewcontroller


    【解决方案1】:

    视图与选择器一起出现,但没有表格视图。

    如果表格视图没有分配数据源,那么它就无处可填充自身,因此它可能会给您“不存在”的外观。

    您是否为此视图创建了视图控制器?它是UITableViewController 的子类,还是至少实现了UITableViewDelegate/UITableViewDataSource 协议?它是否设置为 .xib 中的File's Owner?它是否被分配(使用连接)作为您的表格视图的delegatedataSource

    在您的 .xib 中,是否有顶级 UIViewUITableViewUIPickerView 子视图,它连接到您的视图控制器的 view 属性(即用于 File's Owner)? 界面视图 + | +---UITableView | +---UIPickerView

    【讨论】:

    • 在我弄明白之前,我使用的是基于视图的应用程序模板。在 appDelegate 的 viewDidFinishLaunchingWithOptions: 中,我添加了以下内容:CGRect smallTableViewRect = CGRectMake(0,0,320,240); UITableView *smallTableView = [[UITableView alloc]initWithFrame:smallTableViewRect]; CGRect pickerViewRect = CGRectMake(0,240,320,240); UIPickerView *picker = [[UIPickerView alloc]initWithFrame:pickerViewRect]; [窗口 addSubView:smallTableView]; [窗口 addSubView:picker]; [窗口 makeKeyAndVisible];这会导致顶部有一个表格视图背景,底部有一个黑色矩形。
    • 抱歉 - 我不知道如何使用“添加评论”框格式化代码。
    • 编辑您的原始帖子,而不是以这种方式发表评论。
    • 作为一种良好做法,我不会将该代码放在应用程序委托中。您应该 (1) 在 Interface Builder 中创建视图,或者 (2) 在 Xcode 中作为 .m 文件创建视图,然后您应该将视图与视图控制器相关联。您应该将 那个 视图控制器的 view 作为子视图添加到窗口中。
    • 好的,但我原来的问题/问题仍然存在:到底是怎么做的?我通常可以结合使用 Apple 的文档、我购买的 iPhone 参考书以及在线教程和示例的组合来完成我想要的(我的应用程序目前是一个主要功能基于 Core Data 的实用程序应用程序,有五个或六个工作视图/视图控制器。但我一生都无法弄清楚这个特定的视图。任何具体的帮助将不胜感激。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-10-28
    • 1970-01-01
    • 1970-01-01
    • 2014-06-05
    • 2020-03-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多