使用保存/取消按钮创建模态视图
Posted
技术标签:
【中文标题】使用保存/取消按钮创建模态视图【英文标题】: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 应用程序都遵循类似的设计,以方便用户使用。你的目标是制作一个漂亮、直观的应用程序。如果您觉得将其作为模态呈现会更好,那就去吧。 【参考方案1】:您应该在另一个 UINavigationController 中显示“添加新”对话框,即使您不打算在显示后将其他视图控制器推送到它上面。这使您可以轻松地再次使用导航项来显示按钮。
【讨论】:
你的意思是转到一个新的 NavigationController 视图?仅由模态视图使用的一种? 嗯,好的。感谢您的建议。所以我想我需要手动编程取消按钮以返回正确的视图? 见Dismissing Presented View Controllers。基本上,您想为呈现的视图控制器想出一种方法,让呈现的视图控制器知道用户选择取消。然后呈现视图控制器将关闭它。以上是关于使用保存/取消按钮创建模态视图的主要内容,如果未能解决你的问题,请参考以下文章