当我想访问当前UIView
的父母UIView
我通过分配父UIView
对象当前视图对象财产申报在当前UIView
父UIView
的对象和访问它。访问父视图 - iPhone的SDK
有没有什么办法摆脱这一点,并直接调用父视图的方法或属性?
我也试过(parentView *) self.view.superview
但没有帮助。
它给出错误而调用函数这个对象
[UIVIew unrecognized selector......
非常感谢,
导航
当我想访问当前UIView
的父母UIView
我通过分配父UIView
对象当前视图对象财产申报在当前UIView
父UIView
的对象和访问它。访问父视图 - iPhone的SDK
有没有什么办法摆脱这一点,并直接调用父视图的方法或属性?
我也试过(parentView *) self.view.superview
但没有帮助。
它给出错误而调用函数这个对象
[UIVIew unrecognized selector......
非常感谢,
导航
如果您是直接从UIView
(而不是UIViewController
)调用这一点,应该是self.superview
而不是self.view.superview
。
@ Naveed:这是您可以用于任何视图的通用代码,无论它是父视图还是子视图,只需更改要按的按钮名称以及您想要转到的视图名称即可。例如在后退按钮上按u想要进入库视图然后编写此代码 -
-(IBAction)backButtonPressed:(id) sender
{
llibraryView *libraryview=[[libraryView alloc] initWithNibName:nil bundle:nil];
libraryview.modalTransitionStyle=UIModalTransitionStyleCoverVertical;
[self presentModalViewController:libraryview animated:YES];
[libraryview release];
}
让我知道你的问题是否解决了。
我能想到的是,你想从视图中调用viewcontroller的方法,你添加到viewcontroller的视图。
现在你有两个选择,你可以将视图控制器设置为视图的委托,然后通过[delegate performSelector:]方法调用viewcontroller的方法。
另一种方法是访问视图的超级视图,然后获取它的控制器。你不能直接做到这一点,如果你能做到这一点,就会挫败MVC的全部目的。
但是,仍有出路,在这里你去: -
Get to UIViewController from UIView?
希望,这可以帮助你。
它是UIViewController。但我想它不应该为UIView工作,因为对象是相同的,都是UIView – 2011-01-27 14:28:36
请注意,这返回nil在ViewDidLoad。它只是在viewDidAfter和它之后才有用的。 – 2013-12-03 22:28:16