当我想访问UIView
current的父对象时,我在 current 中UIView
声明 parent 的对象并通过将父对象分配给当前视图的 object 属性来访问它。UIView
UIView
UIView
有没有办法摆脱这个并直接调用父视图的方法或属性?
我也试过(parentView *) self.view.superview
但没有帮助。
调用此对象的函数时出错
[UIVIew unrecognized selector......
当我想访问UIView
current的父对象时,我在 current 中UIView
声明 parent 的对象并通过将父对象分配给当前视图的 object 属性来访问它。UIView
UIView
UIView
有没有办法摆脱这个并直接调用父视图的方法或属性?
我也试过(parentView *) self.view.superview
但没有帮助。
调用此对象的函数时出错
[UIVIew unrecognized selector......
如果您直接从 a UIView
(而不是 a UIViewController
)调用它,它应该是self.superview
而不是self.view.superview
.
@ Naveed:这是您可以用于任何视图的通用代码,无论是父视图还是子视图,只需更改您想要按下的按钮名称和您想要去的视图名称。例如在后退按钮上按下你想去图书馆视图然后写这个代码 -
-(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:] 方法调用视图控制器的方法。
另一种方法是访问视图的超级视图,然后获取它的控制器。你不能直接这样做,因为如果你能这样做,它将破坏 MVC 的整个目的。
但是,仍然有出路,给你:-
希望,这对你有帮助。