想建立一个元组的数组,来简单存放构建 TabViewController 的信息首先我的做法是
1 | let homeTab = (vc: VYHomeViewController(), title: "Home", image: "home_gray", selectedImage: "home_blue") |
但是会报错,Xcode 的修改提示是后面添加 as [Any]
1 | let data = [selfSelectedTab, infoTab, marketTab, userTab] as [Any] |
但是这样做已经不是原来的做一个元组数组的初衷了。无法在遍历数组的时候使用命名元组来获取信息
接着我用 typealias
的方法改成如下:
1 | typealias TabInfo = (vc: UIViewController, title: String, image: String, selectedImage: String) |
给数组添加元素的时候报错,因为元组不支持类型转换,VYHomeViewController
虽然继承 UIViewController
,但是元组看来它们不是同一类型。
最后还是放弃了用元组数组的方法:
1 | let homeTab = (vc: VYHomePageViewController(), title: Home, image: "new_home_gray", selectedImage: "new_home_blue") |