繁体   English   中英

iPhone设置嵌套在NSMutableArray中的ViewController

iPhone Setting ViewController nested in NSMutableArray

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

您好,我正在尝试为嵌套在NSMutableArray内的viewcontroller设置属性,例如,我在此数组内有3个ViewController:

FirstViewController *firstViewController = [FirstViewController alloc];
SecondViewController *secondViewController = [SecondViewController alloc];
ThirdViewController *thirdViewController = [ThirdViewController alloc];


NSMutableArray *viewControllerClasses = [[NSMutableArray alloc] initWithObjects:
                                         firstViewController,
                                         secondViewController,
                                         thirdViewController,                                       
                                         nil];


for (int x=0; x<[viewControllerClasses count]; x++) {

    // as an example to set managedObjectContext I otherwise would set firstViewController.managedObjectContext = context;

    [viewControllerClasses objectAtIndex:x].managedObjectContext = context;
}

但这会导致错误:请求成员“ managedObjectContext”的对象不是结构或联合。 不应将“ firstViewController”与[viewControllerClasses objectAtIndex:0]相同吗?

2 个回复

-objectAtIndex:方法返回一个id ,由于编译器无法确定该getter,因此不能对其应用点语法。

无论如何,您应该只使用快速枚举( for / in循环),并且可以指定静态类型,以便可以使用点语法(假设FirstViewController,其余的继承自BaseViewController):

for (BaseViewController* ctrler in viewControllerClasses)
   ctrler.managedObjectContext = context;

另外,您可以恢复使用方括号:

for (BaseViewController* ctrler in viewControllerClasses)
   [ctrler setManagedObjectContext:context];

(并且请-init…立即在+alloc 。)

您可以尝试强制转换[viewControllerClasses objectAtIndex:x]返回不具有managedObjectContext属性的NSObject ,因此请尝试使用((FirstViewController *)[viewControllerClasses objectAtIndex:x]).managedObjectContext = context;

1 iPhone从另一个viewController添加到NSMutableArray

我有点困惑,我想知道这里的好伙伴是否可以借给我他们的编程专业知识。 我将尽可能地做到尽可能简单和精确: 我是IOS的新开发人员,仅学习了几个月。 我正在大学里为我的论文开发iPhone应用程序。 该应用程序仅是为希望自己为iPhone开发的人的指南,包括教程。 它由许多表格视图组成 ...

2 在嵌套在 PageViewController 中的 viewController 上设置 becomeFirstResponder

我有一个 pageViewController,它有两个子视图控制器,您可以在它们之间滑动。 其中一个有一个 textView,当您滚动到该页面时,我希望它成为第一响应者,然后在您滚动离开时失去焦点。 现在我有这个: 一旦您开始滚动到视图上,键盘就会出现。 但是一旦滚动完成,键盘就会消失。 任 ...

4 iPhone:如何访问NSMutableArray二维设置?

我正在使用NSMutableArray的insertObject将值存储到二维数组中,如下所示。 我认为,这是在Obj C中将值存储在二维数组中的正确方法。 我想在以后的时间访问它。 我怎样才能做到这一点? 谢谢! ...

2011-04-18 12:48:52 1 5049   iphone
6 iPhone-viewController调用viewController

我有3个viewControllers A,B和C。 我在vcA上,并且使用 当vcB可见时,我按下vcC。 现在我在vcC中,想同时删除(或弹出)vcC和vcB并直接转到vcA。 我不想去vcB。 我怎么做? 显示vcC时是否可以从堆栈中静默删除vcB? 谢 ...

7 iphone viewController

我正在创建一个应用程序,我必须从16个UITextFields传递数据,以类对象的形式将它们存储在数组中,并在其他viewController显示该数组中的所有对象。 如何将数据从一个viewController到另一个? ...

2011-05-10 12:05:57 6 266   iphone
10 IPhone自动释放返回的NSMutableArray

我仍然相对较新的iPhone开发,但我认为我理解了内存管理的基本原理。 我有一个返回NSMutableArray的类方法,我在对象上调用alloc和init,因此我知道我负责释放它。 但是因为我正在返回数组,我认为我应该在创建对象时使用自动释放而不是释放它。 有基本代码 - XCod ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM