ios - 带有标题和页面控件的 Swift 导航栏

标签 ios swift

我正在开发一个 swift 应用程序,但在将标题和页面控件放在导航栏上时遇到了一些问题。我只能设法将其中一个放在导航栏上,但不能同时放在两个上。我希望有这样的东西(以及滑动到另一个 View Controller 时的动画):

enter image description here

下面是我的屏幕输出。页面 Controller (嵌入在导航 Controller 中)正在工作,只是想添加标题(根据 View 更改)和页面控制。

enter image description here

这是我创建标题的方式:

这就是我创建标题的方式:

@IBOutlet weak var navBar: UINavigationItem!

let title: UILabel = UILabel(frame: CGRectMake(0, 0, 150, 44))
title.numberOfLines = 2
title.textAlignment = .Center
title.text = "News\n"
navBar.titleView = title

我将标题分成两行,以便为页面控件留出空间。但是,当我尝试以编程方式创建页面控件时,它似乎位于导航栏“后面”。

这是创建页面控件的方式:

let pageControl : UIPageControl = UIPageControl(frame: CGRectMake(0, 0, 150, 44))
self.pageControl.numberOfPages = 3
self.pageControl.currentPage = 0
self.view.addSubview(pageControl)

最佳答案

将标签和页面控件添加到另一个 View ,适本地设置约束/框架,然后将该 View 添加为导航栏的 titleView

关于ios - 带有标题和页面控件的 Swift 导航栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36906978/

相关文章:

ios - 非 View Controller 类中的 UITextViewDelegate

ios - 如何在 UINavigationController 中插入 UITableView

swift - 使用 Swift3 的完成处理程序调用 Objective C 方法(完成是 ​​IUO?)

ios - 如何让数组一一显示在标签上

ios - cordova 模拟 iOS 无法通过命令行运行,但可以通过 Xcode 运行

ios - 在 Swift 中获取和设置 UITextField 和 UITextView 的光标位置

ios - 从 Xib 加载 View 在自动布局后调整框架 subview 的大小

ios - 如何使用 Profile Img 制作可扩展的 TableView?

swift - 当 SBValue 来自 Swift 字典时 SBData 是错误的

swift - CoreData 共享实体属性