首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在objective c中的单个视图控制器上加载多个UIView

在Objective-C中,可以通过以下步骤在单个视图控制器上加载多个UIView:

  1. 创建一个新的UIView对象:UIView *firstView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];
  2. 设置UIView的属性,如背景颜色、边框等:firstView.backgroundColor = [UIColor redColor]; firstView.layer.borderWidth = 1.0; firstView.layer.borderColor = [UIColor blackColor].CGColor;
  3. 将UIView添加到视图控制器的视图层级中:[self.view addSubview:firstView];
  4. 重复上述步骤,创建并添加其他的UIView对象。

完整的代码示例:

代码语言:objective-c
复制
UIView *firstView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];
firstView.backgroundColor = [UIColor redColor];
firstView.layer.borderWidth = 1.0;
firstView.layer.borderColor = [UIColor blackColor].CGColor;
[self.view addSubview:firstView];

UIView *secondView = [[UIView alloc] initWithFrame:CGRectMake(120, 0, 100, 100)];
secondView.backgroundColor = [UIColor blueColor];
secondView.layer.borderWidth = 1.0;
secondView.layer.borderColor = [UIColor blackColor].CGColor;
[self.view addSubview:secondView];

这样,你就在单个视图控制器上成功加载了两个UIView。你可以根据需要设置每个UIView的位置、大小、样式等属性。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

iOS开发系列——纯代码实现iOS开发

新建视图控制器默认情况下是无法加载到程序运行界面上,此时需要在应用程序代理程序加载完毕事件手动加载并显示我们视图。...理论也可以有多个UIWindow但是只有一个是主Window,而且只有主Window可以和用户交互),UIWindow也是继承自UIView,它拥有UIView所有属性、方法; 在UIWindow必须有一个根控制器...); UIViewController是视图控制器,主要用来控制UIView,在UIViewController内部有一个UIView(view属性); 在上面的代码我们首先在应用程序加载完毕之后加载一个...当主窗口设置为可见过程中会调用视图控制器loadView方法来加载视图(注意视图控制器loadView方法是延迟加载,第一次调用视图控制器view属性才会调用此方法;由于makeKeyAndVisible...方法中会使用视图控制器view属性所以此时会调用视图控制器loadView方法),视图加载完之后调用viewDidLoad方法,在这个方法我们添加登录相关控件并将这些控件加载视图控制器KCMainViewController

3.5K60

【iOS 开发】iOS 开发 简介 (IOS项目文件 | MVC 模式 | 事件响应机制 | Storyboard 控制界面 | 代码控制界面 | Retina 屏幕图片适配)

IOS MVC 模式 - M(Model 模型) V (View 视图) C (Controller 控制器) IOS MVC 模式 :  -- Model 模型 : Model 一般式普通 Objective...- C 类, 这些类用于保存 处理 数据; -- View 视图 : 使用 Interface Builder 创建视图组件, xib, storyboard 后缀界面设计文件; -- Controller...灰色箭头作用 :  -- 作用 : 箭头表示 UI 控制器之间切换关系, 箭头指向需要加载 视图控制器; -- 移动箭头 : 视图中只有一个 UI 控制器, 移动箭头始终指向唯一 一个 UI 控制器...-- 缩小 : 多个视图控制器在同一个窗口, 缩小界面可以同时查看所有的 视图控制器; -- 恢复 : 恢复原样查看; -- 放大 : 放大界面设计文件; 3....UIView; -- 创建自定义类 : 选择菜单 File -> New File -> Cocoa Touch -> Objective-C Class; -- OCFollowTouchView.h

4.9K30

(转)iOS开发之UICollectionViewController系列(一) :Ready CollectionViewController

UIContentContainer 是iOS8之后添加协议,也是和Size Class相关协议。该协议方法可以帮助你适配视图控制器内容,比如内容尺寸和位置等。...UICollectionViewController实现行为 如果你集合视图控制器与nib文件或者Storyboard进行了绑定,那么他视图将会从nib文件或者Storybaord中进行加载。...2.当从nib文件或者Storyboard中加载集合视图时,集合视图数据源(Data source)和代理对象(Delegate Object)是从nib或者Storyboard获取。...3.在代码实现相应代理,和TableView非常类似 (1) 返回Section个数方法 Objective-C - (NSInteger)numberOfSectionsInCollectionView...:(UICollectionView *)collectionView { return 1; } (2) 返回每个SectionCell个数方法 Objective-C - (NSInteger

5.5K40

iOS开发常用之测试调试、动态更新

快速 - 用于Swift单元测试(也可用于Objective-C),与Xcode整合在一起。...kiwi-bdd - TDD或BDD,objective-c语言测试框架,最流行BDD测试框架了,Kiwi最受欢迎(根据githubstar数来推断,行为描述和期望写起来也比较易懂,至少我是这么认为...specta - TDD或BDD,objective-c语言测试框架,用的人多。 cedar - TDD或BDD,objective-c语言测试框架,用的人少。...ViewMonitor - 能够帮助iOS开发者们精确测量视图,可直接在调试应用查看具体某个视图坐标,宽高等参数。...是不可多得地学习WatchKit示例式教程(1.如何创建一个简单交互式计数器; 2.如何从手表控制iOS应用程序; 3.如何在WatchKit应用程序和iOS应用之间共享数据; 4,如何创建一个拥有不同背景色数字时钟

3.4K20

简述OC语言

---- OC是在C语言基础加入了一些面向对象特性(封装,继承,多态),OC完全兼容C语言,在代码,可以混用C,甚至是C++代码(C++是在C语言基础开发一种面向对象编程语言)。...在Objective-C,没有方法调用这种说法,只有消息传递。在C++或Java调用某个类方法,在Objective-C是给该类发送一个消息。...强大Method Swizzling(方法交叉使用) 在Objective-C调用一个方法,其实是向一个对象发送消息,查找消息唯一依据是selector名字。...响应者链有以下特点: 1、响应者链通常是由视图UIView)构成; 2、一个视图下一个响应者是它视图控制器(UIViewController)(如果有的话),然后再转给它视图(Super...View); 3、视图控制器(如果有的话)下一个响应者为其管理视图视图; 4、单例窗口(UIWindow)内容视图将指向窗口本身作为它下一个响应者,Cocoa Touch应用不像Cocoa

2K20

iOS 系统视图动画

iOS 系统视图动画 动画为用户界面的状态转换提供了流畅可视化效果, 在 iOS 中大量使用了动画效果, 包括改变视图位置、 大小、 从可视化树删除视图, 隐藏视图等。...来定义动画代码段, 在 begin 和 commit 之间代码会在特殊动画线程运行, 因此不会阻塞主线程, 比如说要切换两个视图, 代码应该是这样子: [UIView beginAnimations..., 如果用 objective-c 代码块来实现, 则应该是这样子: [UIView animateWithDuration:1.0 animations:^{ self.firstView.alpha...创建视图切换动画 视图切换动画可以减少修改可视化树时引起界面上突变, iOS 系统中大量使用了视图切换动画, 视图切换动画主要有下面两种场景: 修改子视图 替换子视图 注意: 不要把视图切换和视图控制器切换混淆...(显示一个模式对话框、将视图控制器推入导航堆栈等), 视图切换改变仅仅是视图可视化树, 视图控制器是不变, 更多信息可以参考iOS视图控制器编程指南。

2.2K30

UIViewController生命周期

一、视图控制器 UIViewController采用懒加载方式,也就是说第一次访问到view属性时才会加载或创建它。...由于视图视图控制器管理,所以讨论视图加载方式时,主要讨论视图控制器加载方式。 通过Storyboard加载:这是苹果推荐方式。...此时整个视图层次(view hierarchy)已经被放到内存。 无论是从nib文件加载,还是通过纯代码编写界面,viewDidLoad方法都会执行。...合创建一些附加view和控件 3、ViewWillAppear 在视图加载完成,并即将显示在屏幕时,会调用viewWillAppear方法,在这个方法里,可以改变当前屏幕方向或状态栏风格等。...=vc]; 4、KeyWindow 当前app可以打开多个window 系统状态栏其实就是一个window ,程序启动时候创建默认window ,弹出键盘也是一个window ,alterView

1.8K10

Cocoa编程中视图控制器视图类详解

iPhone编程规则是:一个窗口,多个视图UIView是iPhone屏幕很多控件基础类。...还为标准系统行为进行响应。从语法 说,UIViewController是视图控制器父类。视图控制器类是没有可视化表示抽象类,只有它管理视图才提供可视画布。记住:1....不过,也可以视具体情况,我们直接在一个独立视图控制器创建UITabBarController实例对象,自定义一个用于视图 切换控制器类ViewSwitcherViewController,就可在其中...代码一是由initWithNibName:方法来加载具体某个视图控制器并自定义该控制器TabBarItem样式外观等。...控制器加载视图过程 当调用视图控制器view属性时,视图控制器会先调用loadView方法加载视图,因此,可以在loadView方法创建所有的视图,这是比较好编程惯例。

5K50

iOS面试题-UI篇

可以响应用户事件,Xcode6之后可以方便通过视图调试功能查看图层之间关系 UIView是iOS系统界面元素基础,所有的界面元素都继承自它。...UIView本身,更像是一个CALayer管理器,访问它跟绘图和坐标有关属性,frame,bounds等,实际内部都是访问它所在CALayer相关属性 UIView有个layer属性,可以返回它主...CALayer实例,UIView有一个layerClass方法,返回主layer所使用类,UIView子类,可以通过重载这个方法,来让UIView使用不同CALayer来显示,: - (class...loadView用来自定义view,只要实现了这个方法,其他通过xib或storyboard创建view都不会被加载 看懂控制器view创建这个图就行 [image] IBOutlet连出来视图属性为什么可以被设置成...两者都是在多个试图控制器间跳转函数 presentViewController提供是一个模态视图控制器(modal) pushViewController提供一个栈控制器数组,push/pop 请简述

1.9K21

iOS图形处理概论:OpenGL ES,Metal,Core Graphics,Core Image,GPUImage,Scene Kit (3D) ,Sprite Kit (2D),OpenCV

在 iOS 每一个视图都对应Core Animation一个层对象,与视图一样,层之间也组织为层关系树。一个层捕获视图内容为一个被图像硬件容易操作位图。...View Graphics Context: 由UIView自动创建,你重写UIView drawRect方法时,你内容会画在这个上下文。...使用 C++ API 并不是绝大多数 iOS 开发者每天都做事,你需要使用 Objective-C++ 文件来调用 OpenCV 函数。...这篇 OpenCV iOS 教程告诉你只要把所有用到 OpenCV 文件后缀名改为 .mm 就行了,包括视图控制器类也是如此。这么干或许能行得通,却不是什么好主意。...这些 Objective-C++ 封装把 OpenCV C++ API 转化为安全 Objective-C API,以方便地在所有 Objective-C 类中使用。

3.4K41

《Motion Design for iOS》(十七)

让我们先添加一个简单UIView对象到屏幕并设置它圆角。我们要把它添加到我们主窗口上时因为它是一个快速例子,但在真实app界面你需要添加到管理当前界面的视图控制器。...对象并设置了它框架来定义它在屏幕X和Y坐标,以及它宽和高,然后将其添加到屏幕。...这里是和上面一样功能,但是是Swift而不是Objective-C。你可以打开Balls In Swift Xcode工程导出这个例子Swift版本。...平移更改会将视图上、下、左、右移动。在我们例子,我们会将它右移75个像素。...你可以手动构建转变矩阵来包含尺寸和平移更改到一个数据结构,但我发现让iOS来帮我们结合多个单独转变到一个最终转变会容易一些。 到目前为止有意义吗?

93820

Swift-MVVM 简单演练(一)

,我突然发现swift在这里是比objective-c友好很多,如果你给参数设置了一个默认值。...那么,就可以不对原方法造成侵害,不影响原方法调用。 但是,objective-c就没有这么友好,如果在原方法增加参数,那么之前调用过此方法地方,就会全部报错。...并且对比一下swift和objective-c延迟加载异同点 模拟延迟加载数据 /// 加载数据 override func loadData() { // 模拟`延时`加载数据..."); }); 虽然都是一句话,但是swift语法可读性明显比objective-c要好一些。...总结 使用代理传递消息是为了在控制器视图之间解耦,让视图能够被多个控制器复用,TableView 但是,如果视图仅仅是为了封装代码,而从控制器剥离出来,并且能够确认该视图不会被其它控制器引用,

10.2K51

IOS 与ANDROID框架及应用开发模式对照一

二 应用开发都採用了模型-视图控制器(MVC) 设计模式 IOS框架视图控制器对象担当MVC模式控制器角色。管理应用程序内容在屏幕呈现。...视图控制器负责显示和管理单个视图及其分视图,以及那些视图与应用程序其它部分之间交互。呈现时。视图控制器视图安装到应用程序窗体,使它们显示出来。...视图控制器对象,能够作为自包括单元来看,它处理其自身视图创建和销毁,处理其视图在屏幕显示。并协调视图和应用程序其它对象之间交互。...用于在主屏幕呈现内容,但应用程序可能会有另外一个窗体,将内容显示在外接显示器。 要更改您应用程序内容,需使用视图控制器,来更改在相应窗体显示视图。...UIKit 框架提供视图组织为视图层次。应用程序所显示视图,会排列成层次结构(直观基于包括)。此模式同意应用程序将单个视图和合成视图同等对待。

1K20

2019最新iOS面试题及答案

也可以理解成延时加载。我觉得最好也最简单一个列子就是tableView图片加载显示了。一个延时载,避免内存过高,一个异步加载,避免线程堵塞。 33....是否在一个视图控制器嵌入两个tableview控制器?...当然,题目本身也有歧义,如果不是我们定性思维认为UIViewController,而是宏观表示视图控制者,那我们倒是可以把其看成一个视图控制者,它可以控制多个视图控制器,比如TabbarController...因此我们并不关心如何去关联他,他怎么关联,方法只是让我返回根据自己需要去设置相关数据源。因此,我觉得可以设置多个数据源啊,但是有个问题是,你这是想干嘛呢?...简述视图控件器生命周期。 答: loadView 尽管不直接调用该方法,多手动创建自己视图,那么应该覆盖这个方法并将它们赋值给试图控制器 view 属性。

2.3K20

唐巧iOS技术博客选摘

《刨根问底ObjectiveC Runtime(1)- Self & Super》:本文通过分析clang重写Objective-C源码,从而解释Objective-Cself和super在编译器层面分别是如何处理...PQFCustomLoaders:PQFCustomLoaders 提供了高质量、定制化加载进度条 《Method Swizzling 和 AOP 实践》:利用 Objective-C ...《UIResponder》:在 UIKit ,IApplication、UIView、UIViewController 这几个类都是直接继承自 UIResponder 类。...另外 SpriteKit SKNode 也是继承自 UIResponder 类。因此 UIKit 视图、控件、视图控制器,以及我们自定义视图视图控制器都有响应事件能力。...《轻松学习 Objective-C 消息转发》:作者在文章通过一个小例子来讲解什么是消息转发,以及如何消息转发,希望看完这篇文章时大家会彻底明白 OC 消息转发机制。

3.2K60

iOS动态更新补丁策略JSPatch运用基础一

其框架小巧,代码简洁,并且通过系统JavaScriptCore框架与Objective-C进行交互,这使其在安全性和审核风险都有很强优势。...,原本红色视图被修改成了绿色。...1.在JavaScript文件中使用Objective-C类    在编写JavaScript代码时如果需要用到Objective-C类,必须先对这个类进行require引用,例如,如果需要使用UIView...这个类,需要在使用前进行如下引用: require('UIView') 同样也可以一次对多个Objective-C类进行引用: require('UIView, UIColor, UILabel') 还有一种更加简便写法...,直接在使用时候对其进行引用: require('UIView').alloc().init() 2.在JavaScript文件中进行Objective-C方法调用     在进行Objective-C

86620
领券