使用 swift 将数据从 UITabBarView 类传递到 UIViewController 的子类
Posted
技术标签:
【中文标题】使用 swift 将数据从 UITabBarView 类传递到 UIViewController 的子类【英文标题】:passing data from UITabBarView Class to sub class of UIViewController using swift 【发布时间】:2016-01-25 08:44:23 【问题描述】:我正在尝试将数据从我的 TabViewClass 传递到其 Tab ViewController 的子类 这是我的 TabBar 类
类 TabBarController : UITabBarController, UITabBarControllerDelegate
var unitId : Int = 0;
override func viewDidLoad()
super.viewDidLoad()
print("TabBarVC Called")
unitId = 10;
print("Unit Id = \(unitId)")
self.delegate = self;
在运行这个 viewDidLoad() 之后,我的第一个 Tab Bar 的子类自动调用了它的 viewDidLoad() .. 我怎样才能将我的主要 Tab Bar Controller 类数据共享到它的子 Tab 类(视图控制器)中 .. 使用 swift
【问题讨论】:
【参考方案1】:不知道好不好用,我是这样传数据的:
class TabBarController : UITabBarController, UITabBarControllerDelegate
var unitId : Int = 0;
override func viewDidLoad()
super.viewDidLoad()
print("TabBarVC Called")
unitId = 10;
print("Unit Id = \(unitId)")
self.delegate = self;
//Pass data to all tab controller
let MovementRepVC: MovementRep = self.viewControllers![0] as! MovementRep
MovementRepVC.id = self.unitId
let secondVC: UIViewController = self.viewControllers![1] as! UIViewController
secondVC.data = self.myData
希望对你有所帮助。
【讨论】:
firstVC .. 不接受我的 ViewController 类变量 class MovementRep : UIViewController , UITableViewDelegate, UITableViewDataSource var id : Int = 0 .. 在这个类中我想接收 id.. 我的第一个标签栏控制器类 @zeeshannazakat 因为你必须像这样修改代码:让 MovementRepVC: MovementRep = self.viewControllers![0] as! MovementRep MovementRepVC.yourData = self.dataToShare 上面的代码给了我这个例外:在以上是关于使用 swift 将数据从 UITabBarView 类传递到 UIViewController 的子类的主要内容,如果未能解决你的问题,请参考以下文章
如何将 json 数据从 alamofire 转换为 swift 对象
将数据从 TableViewController 传递到 XIB 文件而不使用 Segues-Swift 3
当 iPhone 不在附近时,使用 Swift 将数据从 Apple Watch 发送到 iPhone
使用 Swift 3 将数据从 Modal Viewcontroller 传递到 rootController(不要 Segue)