【问题标题】:How to design multiple views in iPhone如何在 iPhone 中设计多个视图
【发布时间】:2011-05-30 14:01:57
【问题描述】:

我正在为 iPhone 编写代码。我的第一个屏幕只有一个带有文本菜单的按钮。当用户单击此按钮时,下一个屏幕将出现多个导航栏。每个导航栏都有自己的文本信息,这些信息在单击任何导航栏后被选中。

我应该如何为 iPhone 设计它?请给我概念。我应该采取多种观点吗?如果我有多个视图,我将如何隐藏和显示按钮单击事件?

提前致谢。

【问题讨论】:

    标签: iphone uiviewcontroller


    【解决方案1】:

    您必须调整您的用户界面以符合 Apple 希望应用程序的工作、外观和感觉 - 或制作您自己的自定义视图控制器。即使这样,您也可能无法获得您想要的确切行为。

    我最热门的建议是查看 appstore 上的类似应用,看看它们是如何导航的。

    我没有从你的描述中得到一个画面,但似乎你想要所谓的“向下钻取”。最好使用 tableViews 来完成。

    您不能在同一个“屏幕”上拥有多个导航控制器;它在 iPhone 上不是这样工作的。相反,您拥有的是一个单一的导航控制器,它控制视图的推送。您根据用户做出的选择决定要推送哪个子视图,导航控制器会处理与用户的其余交互,让他或她在视图之间导航。

    示例结构:

    Window-based app
    +-MainWindow.xib
    | +-First view with button
    | +-UINavigationController
    +-tableview1.xib
    +-tableview2.xib
    +-any more views you need.
    

    使应用程序委托<UINavigationControllerDelegate> 并声明navCt *UINavigationController,并在Interface Builder 中连接它。然后,您可以编写一个 pushVC 方法,该方法将 UIViewController *vc 作为参数。它做了一个[navCt pushViewController:vc animated:YES];

    将按钮连接到 IBAction,然后调用应用委托中的方法[PushVC myVC],其中 myVC 指的是应用中的任何视图控制器,在本例中为表视图 1。

    在这个表中,在didSelectRow...事件上可以用同样的方法推送子视图表视图2。

    如果您不确定 iPhone 应用程序设计,我认为这是最少的代码。不管怎样,我希望它能提供一些想法。

    【讨论】:

      【解决方案2】:

      您应该阅读有关 UINavigationController、UITabBarController、UIViewController 的信息。

      http://developer.apple.com/library/ios/#documentation/uikit/reference/UIViewController_Class/Reference/Reference.html

      你几乎总是做一个视图公关。视图控制器。

      【讨论】:

        猜你喜欢
        • 2016-05-27
        • 2012-09-24
        • 2010-12-19
        • 2019-07-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-11-18
        相关资源
        最近更新 更多