哪种方法是在Instagram上创建像这样的顶部导航栏的最佳方法?
我有一个带有5个视图的Tab Bar控制器,但是我不明白如何在其中一个视图中创建另一个导航栏。我应该创建两个标签,并将每个标签与另一个视图连接起来,还是有更好的方法来实现此目的?
答案 0 :(得分:1)
您的方法很好,很高兴看到一些屏幕截图或代码以完全理解它。
如果要将导航栏放在这些选项卡视图中,则需要放置一个连接到导航控制器的容器视图。
我创建了一个simple project,向您展示了我是如何实现的。
使用滚动视图包含另外两个嵌入了某些导航控制器的视图容器:
视图容器允许您嵌入任何类型的视图/控制器:
Apple docs has a nice reference of how to do this,您只需要将ViewController更改为NavigationController。
如果您不介意使用第三方代码,那么还有很多选择可供您选择:
import PolioPager
class ViewController: MainContainerViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
override func tabItems()-> [TabItem] {
return [TabItem(title: "One"),TabItem(title: "Two")]
}
override func viewControllers()-> [UIViewController]
{
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let viewController1 = storyboard.instantiateViewController(withIdentifier: "cont1")
let viewController2 = storyboard.instantiateViewController(withIdentifier: "cont2")
return [viewController1, viewController2]
}
}
在上面的示例中,您可以使用PolioPager实例化2个不同的导航视图控制器,例如,由情节提要标识符cont1
cont2
标识。
其他旅行聚会库: