【问题标题】:Create Modal View with Save/Cancel button使用保存/取消按钮创建模态视图
【发布时间】:2014-06-29 17:45:58
【问题描述】:

我是 Xcode 开发的新手(我正在使用 swift),并且正在情节提要中构建我的应用程序流程。我正在尝试创建一个与日历应用程序类似的“添加新”对话框。

在结构方面,我有一个UITableViewController,上面有一个UINavigationItem(在故事板的前面有一个UINavigationController。我用添加标识符添加了一个UIBarButtonItem,并创建了一个从它转到一个新的UIViewController,使用“Present Modally”选项使视图从底部出现。

在“添加新”屏幕上,我希望顶部有一个导航栏,带有一个取消按钮、一个保存按钮和页面标题(与日历应用添加事件视图的工作方式相同)。

最初我想我只是将一个 UIToolBar 项放到页面上并手动创建这些项。然而,苹果标准似乎表明工具栏应该只出现在屏幕底部,而不是顶部。

我可以将 Segue 更改为“显示”,这会导致视图从右侧滑入。它还将左侧按钮设置为“返回”动作(即“

我应该使用什么苹果认可的结构来做到这一点?总而言之,我想做以下事情:

  • 从列表视图上的添加按钮转到添加视图。
  • 从底部动画添加视图
  • 在添加视图上显示一个导航栏,其中包含三个项目:
    • 取消(最左侧)- 返回上一个视图(通过向下滑动视图)
    • 标题(中)
    • 保存(最右边) - 执行自定义操作(我可以自己处理)

【问题讨论】:

  • Apple 为您提供指导,但它们可能会被破坏。他们的目标是让所有 iOS 应用程序都遵循类似的设计,以方便用户使用。你的目标是制作一个漂亮、直观的应用程序。如果您觉得将其作为模态呈现会更好,那就去吧。

标签: ios swift segue xcode-storyboard


【解决方案1】:

您应该在另一个 UINavigationController 中显示“添加新”对话框,即使您不打算在显示后将其他视图控制器推送到它上面。这使您可以轻松地再次使用导航项来显示按钮。

【讨论】:

  • 你的意思是转到一个新的 NavigationController 视图?仅由模态视图使用的一种?
  • 嗯,好的。感谢您的建议。所以我想我需要手动编程取消按钮以返回正确的视图?
  • Dismissing Presented View Controllers。基本上,您想为呈现的视图控制器想出一种方法,让呈现的视图控制器知道用户选择取消。然后呈现视图控制器将关闭它。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-05-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多