【发布时间】:2012-12-15 06:12:33
【问题描述】:
我正在创建一个视图控制器的实例,然后以模态方式将其呈现在另一个视图上:
[viewController receiveNumber1:number1 andNumber2:number2];
[viewController setModalTransitionStyle:UIModalTransitionStyleCrossDissolve];
[self presentModalViewController:viewController animated:YES];
我想做的是在初始化时在这个新的视图控制器中设置两个属性。
我可以通过调用自定义方法来做到这一点(这里有些是 int 变量):
[viewController methodProperty1:something1 andProperty2:something2];
但是,我确实需要在初始化时正确设置这些属性,因为新视图的内容取决于这些数字。
有没有办法在初始化时将信息传递给新视图?比如:
[[UIViewController alloc] initWithValue1:something1 andValue2:something2];
另外,我不明白为什么
CustomViewController *view = [[CustomViewController alloc] init];
view.property = newValue; / [view setProperty:newValue];
在此配置中不起作用,这意味着属性的值不会改变。我可以在新视图中调用方法并以这种方式设置其属性,但不能直接设置属性?
如果这些是蹩脚的问题,我很抱歉,但我是一个初学者。
非常感谢!
【问题讨论】:
-
首先,“XYZ 在此配置中不起作用。” - 准确的说?编译器错误?运行时错误?意外的结果/行为?二。 “类似
initWithBlah:” - 是什么阻止您在子类中实现该方法? -
两者应该是等价的。但是,为什么不继续编写自定义初始化方法呢? (对不起英语,我也是匈牙利人,但这是这样的政策。)
-
您设置这些属性的方式应该有效。你错过了别的东西。你是如何呈现 viewController 的?代码还是segue?
-
代码,我不使用IB。我将代码添加到我的问题中。
-
@GergelyKovacs “我不使用 IB”——你摇滚。真的。 (你会被问好几次,为什么不呢。做好准备。)
标签: iphone ios properties uiviewcontroller