iOS控件学习

在view里面跳转控制器

2017-09-19  本文已影响0人  Dontdelete

今天写代码的时候遇到个问题记录一下,

先说需求:自定义了一个CustomView,里面添加了个button,然后在一个控制器里,添加若干个CustomView,然后点击每个CustomView里的button跳转到不同的控制器上。

问题:本来想用代理来实现,但是我只会把控制器中每个CustomView里的button都跳转到一个控制器上

本人代理学的不是很好,又由于时间紧,用了其他方法

解决:1.把CustomView的button成员变量暴露在.h文件里面,然后在控制器中使用 [CustomView.button addTarget:selfaction:@selector(ButtonClick)forControlEvents:UIControlEventTouchUpInside]; 

在这里就要用到在view里拿到其所在的控制器的方法了:

- (UIViewController*)viewController {

for(UIView* next = [selfsuperview]; next; next = next.superview) {

UIResponder*nextResponder = [nextnextResponder];

if([nextResponderisKindOfClass:[UIViewControllerclass]]) {

return(UIViewController*)nextResponder;

}

}

returnnil;

}

上一篇 下一篇

猜你喜欢

热点阅读