iOS 获取UIView所在的VIewController

写程序的时候我们经常要封装代码,当你封装了一个UIView的子类里需要调用所在ViewController的方法用如下代码调取所在的VIewController

#pragma mark - 获取所在ViewController
- (UIViewController *)superViewController:(id)sender {
    for (UIView* next = [self superview]; next; next = next.superview) {
        UIResponder* nextResponder = [next nextResponder];
        if ([nextResponder isKindOfClass:[UIViewController class]]) {
            return (UIViewController *)nextResponder;
        }
    }
    return nil;
}
时间: 2024-09-29 02:20:33

iOS 获取UIView所在的VIewController的相关文章

ios 获取按钮所在的cell对象, 注意:ios8 ios7 获取cell对象的区别

ios7 : ios7 下 button.superview.superview .superview 是获取按钮所在的cell  NSLog(@"2: cell ---- %@", button.superview.superview.superview); 2014-10-07 10:23:55.583 NeiHanShe[1407:60b] 2: cell ---- <RadioCell: 0x155849d0; baseClass = UITableViewCell; f

ios 获取button所在的cell对象, 注意:ios7 =&amp;lt; System Version &amp;lt; ios8 获取cell对象的差别

ios7 =< System Version< ios8 : ios7 =< System Version < ios8  下 button.superview.superview .superview 是获取按钮所在的cell  NSLog(@"2: cell ---- %@", button.superview.superview.superview); 2014-10-07 10:23:55.583 NeiHanShe[1407:60b] 2: cell

Swift 获取view所在的ViewController

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 17.0px Menlo; color: #1e9421; background-color: #ffffff } p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 17.0px Menlo; color: #c42275; background-color: #ffffff } p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; fo

iOS 获取UIView 动画的实时位置的方法

[self.animationView.layer.presentationLayer frame].origin.x

iOS 获取当前顶层的ViewController

#pragma mark - topVC - (UIViewController *)theTopviewControler { UIViewController *resultVC; resultVC = [self _topViewController:[[UIApplication sharedApplication].keyWindow rootViewController]]; while (resultVC.presentedViewController) { resultVC =

iOS 获取当前界面所在的视图控制器

当前界面所在的视图控制器 逐步完善的过程 一. //获取当前屏幕显示的viewcontroller (这里面获取的相当于rootViewController) - (UIViewController *)getCurrentVC { UIViewController *result = nil; UIWindow * window = [[UIApplication sharedApplication] keyWindow]; if (window.windowLevel != UIWindow

在iOS中获取UIView的所有层级结构 相关

在iOS中获取UIView的所有层级结构 应用场景 在实际 iOS 开发中,很多时候都需要知道某个 UI 控件中包含哪些子控件,并且分清楚它们的层级结构和自个的 frame 以及 bounds ,以便我们完成复杂的 UI 布局,下面的代码就能很方便的获取某个 UI 控件的所有的层级结构,我们可以用它计算,然后把结果写入到本地磁盘,导出成XML文件,这样我们就可以很直观的看出它内部的细节. /** * 返回传入veiw的所有层级结构 * * @param view 需要获取层级结构的view *

【iOS解决思路】得到某个view所在的ViewController

在一个tableViewCell中有个btn,如何得到它所在的viewcontroller,以便于push出新的viewController? 我的思路是传值,但网上有下面这种方法,分享. 跟得到某个视图上的子视图思想类似,但之前没有接触过 UIResponder,所以没有想到. - (UIViewController *)viewController { for (UIView* next = [self superview]; next; next = next.superview) { U

NSClassFromString 和 遍历UIView获取她所在的UIViewController的tips

一.NSClassFromString是NSObjCRuntime.h的方法 FOUNDATION_EXPORT Class __nullable NSClassFromString(NSString *aClassName); Description:Obtains a class by name.The name of a class.Parameters:aClassName The name of a classReturns:The class object named by aCla