转自:http://leopard168.blog.163.com/blog/static/168471844201381584533466/ 面对iOS初学者,总会被问到一些不常被关注的问题,比如: UIView 与 UIWindow是什么关系? 谁继承的谁?  从字面意思来看,貌似UIWindow 是UIView 的父类, 按说,应该是先有窗口,再有视图?  果真如此么? 事实上, UIView 继承于 UIWindow, 由Apple的官方文档为证. 如下图. UIWindow继承自UIV…
基础 UI(user interface)是用户界面:iOS的应用是由各种各样的UI控件组成 UIWindow就是一个窗口,学的第一个基础类,就是一个容器,可以在容器上放不同的内容,每个app都需要借助Window将内容展现给用户 UIView是视图,代表屏幕上的一个矩形区域 UIView和UIWindow除了继承外没有其他关系,window是窗口,上面赋着UIView,平常看不见UIWindow,我们用的self是系统建的UIView 一般不要直接在UIWindow上直接加视图 创建视图:1.…
创建三个类 BasicViewController : UIViewController SecondViewController : UIViewController ThirdViewController : UIViewController 然后我们在BasicViewController .m文件中push一个viewController: SecondViewController *svc = [SecondViewController new]; [self.navigationCo…
UIView/UIWindow/UIScreen/CALayer 1.UIScreen可以获取设备屏幕的大小. 1 2 3 4 5 6 7 // 整个屏幕的大小 {{0, 0}, {320, 480}} CGRect bounds = [UIScreen mainScreen].bounds; NSLog(@"UIScreen bounds: %@", NSStringFromCGRect(bounds));   // 应用程序窗口大小 {{0, 20}, {320, 460}} CG…
iOS开发中视图控制器ViewControllers之间的数据传递 这里我们用一个demo来说明ios是如何在视图控制器之间传递重要的参数的.本文先从手写UI来讨论,在下一篇文章中讨论在storyboard中传递数据. 首先新建一个空工程,并添加一个根视图控制器类,如下图所示: # 在函数didFinishLunchingWithOption中添加几行代码,完成后如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 - (BOOL)application:(UIApplication…
UIWindow,UINavigationController与UIViewController之间的关系 虽然每次你都用UINavigationController与UIWindow,但你不一定知道他们之间到底怎么运作的哦:) AppDelegate.h的代码 RootViewController.m // // RootViewController.m // UIWindow // // Copyright (c) 2014年 Y.X. All rights reserved. // #im…
在iOS 开发中, 搞清楚Delegate 是需要花些时间的. Delegate 本来是软件架构设计的一种理念.对于像手机这样一个有限的设备,我们需要充分考虑到:内存要尽量省着用: 视图之间的关系要清晰. 如果你所开发的App ,仅仅是一个demo,是体现不出架构优势的. 但当你的App 需要处理海量数据, 而视图之间的关系又颇为复杂时,你将不得不考虑这些问题.视图之间的关系,不仅仅是跳转,更重要的是视图之间数据的传递.当视图A 发生变化时,如何将这个变化告知视图B 呢? 举个例子吧. 如下图所…
(1)设置状态栏的2种方式 --第一种方式就是我们在控制器中设置,系统默认就是交给视图控制器去管理的,这样不同视图控制器能够自己定义不同的状态栏例如以下: -(BOOL)prefersStatusBarHidden{ } -(UIStatusBarStyle)preferredStatusBarStyle{ } --假设我们须要交给UIApplication对象管理(iOS6之前就是),则须要例如以下设置: 先在info.plist中把默认的设置改动掉: 然后直接用例如以下代码就可以: - (v…
在iOS中获取UIView的所有层级结构 应用场景 在实际 iOS 开发中,很多时候都需要知道某个 UI 控件中包含哪些子控件,并且分清楚它们的层级结构和自个的 frame 以及 bounds ,以便我们完成复杂的 UI 布局,下面的代码就能很方便的获取某个 UI 控件的所有的层级结构,我们可以用它计算,然后把结果写入到本地磁盘,导出成XML文件,这样我们就可以很直观的看出它内部的细节. /** * 返回传入veiw的所有层级结构 * * @param view 需要获取层级结构的view *…
UIView的alpha.hidden和opaque属性之间的关系和区别 作者:wangzz 原文地址:http://blog.csdn.net/wzzvictory/article/details/10076323 转载请注明出处   UIView的这几个属性让我困惑了好一阵子,通过翻看官方文档和stackoverflow等网上资源,对它们有了一定理解,现分享出来.如理解有误,还请大家指出.   一.alpha 液晶显示器是由一个个的像素点组成的,每个像素点都可以显示一个由RGBA颜色空间组成…