从TabBarController访问视图控制器属性

时间:2012-11-09 09:59:39

标签: objective-c ios properties uiviewcontroller uitabbarcontroller

我有一个UITabBarController(嵌入UINavigationController),其中有一些“孩子”UIViewControllers

当用户到达TabBarController时,会显示第一个ViewController。我在我的TabBarController中处理数据,然后我在不同的viewControllers中使用它。因此,从子ViewControllers访问TabBarController的属性不是问题。

现在,我要做的是在我的TabBarController中访问子ViewControllers的属性。

我知道这样的事情可以循环通过控制器:

for (UIViewController *v in self.viewControllers)
{
    if ([v isKindOfClass:[MyViewController class]])
    {
        // Do something here
    }
}

此代码有效,我正确找到MyViewController,但现在我不知道如何访问其属性。有人可以给我一个如何做到这一点的提示吗?

谢谢!

2 个答案:

答案 0 :(得分:3)

for (UIViewController *v in self.viewControllers)
{
    if ([v isKindOfClass:[MyViewController class]])
    {
       MyViewController *myViewControllerObj = (MyViewController *)v;

        // you can access all the properies here
        // example: myViewControllerObj.yourPropery;
    }
}

答案 1 :(得分:0)

将tye转换为您的特定View Controller和访问属性。不要忘记将头文件包含在.m文件中。

部首:

#import "MyViewController.h"

类型转换:

MyViewController *vc = (MyViewController*) v;
v.myProperty = myValue;