iOS - 通过view查找所在(viewController)

- (UIViewController *)findViewController:(UIView *)sourceView
{

        id target=sourceView; 

        while (target) {

           target = ((UIResponder *)target).nextResponder;

           if ([target isKindOfClass:[UIViewController class]]) {

               break;
       }
   }

   return target;
}    
时间: 2024-10-05 08:53:08

iOS - 通过view查找所在(viewController)的相关文章

iOS 7 :代码解决ViewController的View整体上移的问题

解决iOS7视图控制器的View整体上移20个像素 当我们在使用Xcode5创建一个新的项目的时候,我们会发现之前运行在iOS6上面的App整体的视图都向上移动了20个像素点,因为 iOS 7 把整个屏幕高度(包括状态栏和导航栏)都作为了视图控制器的有效高度,于是iOS6上的控制器视图和上面的状态栏交叠在一起了. 关于这个问题,我们的解决方法: 苹果在升级到ios7的时候已经考虑到控制器视图整体上移的这个问题,于是就在iOS7 SDK中为视图控制器添加了一个新的属性edgesForExtende

iOS Programming View Controllers 视图控制器

iOS Programming View Controllers? 视图控制器? 1.1? A view controller is an instance of a subclass of UIViewController. 一个view controller 是一个UIViewController的子类. A view controller manages a view hierarchy. 一个view controller 管理一个视图树. It is responsible for c

【转】iOS应用view之间数据传递的方式

数据在view之间传递分为两大类:直接传递与间接传递.其中间接传递里面还可以定义一个singleton,用来共享数据. [iOS5之前的旧解决方法] 1)采用代理模式 子viewcontroller设计 代理协议,定义协议接口,父viewcontroller 实现协议接口,实现子viewcontroller 退出时将相关数据更新到父视图.2)采用ios的消息机制 父viewcontroller注册消息 子viewcontroller 发送消息,触发父viewcontroller的消息处理.3)采

[IOS初学]ios 第一篇 storyboard 与viewcontroller的关系

学习了一下ios,把一个基本的概念搞清楚了,在android或者wp中,大家基本都是习惯与一个画面场景代表一个类,新建场景的时候自动新建了类,但在ios中使用了storyboard之后发现,在storyboard中新加入了一个新的viewcontroller之后,就不知道在哪里写代码来控制这个viewcontroller,因为默认初始化创建这个app的时候自动带了一个viewcontroller. 对于我来说这个一开始就没搞清楚,就像下面这个图,建立了一个新的viewcontroller直接在s

iOS根据坐标数据点所在的坐标区域来动态显示到可视范围

在地图上标注很多点之后,地图的中心点可以设置,但是缩放级别用起来就有点囧了, 所以,就需要根据坐标数据点所在的坐标区域来动态计算,把所有点都刚好显示到地图的可视范围内. 直接上代码: //清理坐标数据的视图和数据 [_bMapView removeAnnotations:_mapAnnotations]; [_mapAnnotations removeAllObjects]; [_carPointArray removeAllObjects]; //声明解析时对坐标数据的位置区域的筛选,包括经度

iOS 判断View 是否是第一次显示

在实现某些需求的时候会有这样的情况,页面第一次加载显示的时候需要某些操作,而以后就不需要重复执行了, 一般这种处理都放在- (void)viewDidLoad或- (id)init因为一般这两个函数除了在第一次显示或初始化以后就不会走了. 如果反过来呢页面第一次加载显示的时候不需要某些操作,但是如果是非第一次就需要做些判断,这个时候就需要做一些处理. 我选择了用计数来控制通过-(void)viewDidAppear:(BOOL)animated来控制 做法就是全局一个int isfirst 在-

一句话搞定IOS中View的Frame和Bound

就一句话,Frame是父View上看到子View的窗户,Bound是子View上可以被父View看见的内容. 稍微解释下.Frame 指子View在父View中的位置以及大小.由两部分构成,第一部分是Origin,规定了子View在父类的位置.第二部分是Size,指View在父类中的可视范围(这里能说是View的大小).这感觉像是在父View中在Frame.Origin位置打开一个窗户,窗户的大小是Frame.Size,从窗户中可以看到子View的内容. Bound 指子View自身显示那些内容

iOS show view above keyboard

Access the main window or view: http://stackoverflow.com/questions/6820017/ios-access-main-window-or-view http://www.cnblogs.com/ihojin/p/view-cover-keyboard.html http://stackoverflow.com/questions/6544042/show-a-view-over-the-keyboard iOS show view

iOS 制作view渐变的效果CAGradientLayer

有时候我们需要在view中加入渐变的效果来让它看起来有玻璃质感,可以使用Core Animation框架中提供的CAGradientLayer来实现. 代码如下:首先添加QuartzCore.framework然后加入如下代码: #import <QuartzCore/QuartzCore.h> - (CAGradientLayer *)shadowAsInverse { CAGradientLayer *newShadow = [[[CAGradientLayer alloc] init]