③(界面篇)、《史上最全iOS八股文面试题》2022年|③(界面篇)、《史上最全iOS八股文面试题》2022年,金三银四我为你准备了,iOS《1000条》笔试题以及面试题(包含答案)

iOS面试题 一共分为笔试题面试题两部分
笔试题 一共分为10个 总共613题
面试题 一共400题
笔试题 一个10个系列 分别为
①(语法篇) 共147题 已更新
②(常识篇) 共72题 已更新
③(界面篇) 共83题 已更新
④(iOS篇) 共52题 已更新
⑤(操作篇) 共68题 已更新
⑥(数据结构篇) 共23题 已更新
⑦(多线程篇) 共60题 已更新
⑧(网络篇) 共22题 已更新
⑨(多媒体篇) 共59题 已更新
⑩(安全篇) 共27题 已更新
面试题 一共分为3个 总共400题
?(面试篇 1/3) 共127题 已更新
?(面试篇 2/3) 共137题 已更新
?(面试篇 3/3) 共136题 已更新
【③(界面篇)、《史上最全iOS八股文面试题》2022年|③(界面篇)、《史上最全iOS八股文面试题》2022年,金三银四我为你准备了,iOS《1000条》笔试题以及面试题(包含答案)】③(界面篇)、《史上最全iOS八股文面试题》2022年|③(界面篇)、《史上最全iOS八股文面试题》2022年,金三银四我为你准备了,iOS《1000条》笔试题以及面试题(包含答案)
文章图片

@TOC
笔试题 613题 ??③、笔试题-界面篇(83题) 1.UIViewController的didReceiveMemoryWaring方法什么时候会被调用:[单选题]
  • [ ] A、外接来电
  • [ ] B、系统错误
  • [x] C、系统内存不足
  • [ ] D、系统CPU被占用100%
2.下面哪个在iPhone应用程序开发时不能使用:[单选题]
  • [ ] A、UITableViewController
  • [ ] B、UINavigationController
  • [x] C、UISplitViewController
  • [ ] D、UITableViewController
3.下面不是标准UIButton类型的是:[单选题]
  • [ ] A、UIButtonTypeRoundedRect
  • [ ] B、UIButtonTypeContacAdd
  • [x] C、UIButtonTypeRadio
  • [ ] D、UIButtonTypeInfoLight
4.在给UIButton设置图片时,为了让图片适应按钮的大小,需要将按钮contentMode设置为:[单选题]
  • [ ] A、UIViewContentModeScaleToFill
  • [ ] B、UIViewContentModeScaleAspectFit
  • [x] C、UIViewContentModeScaleAspectFill
  • [ ] D、UIViewContentModecenter
5.关于UIControlUIView之间的关系,下面说法正确的是:[单选题]
  • [x] A、UIcontrol继承于UIView
  • [ ] B、UIView继承于UIcontrol
  • [ ] C、UIcontrol与UIView之间没有继承关系
  • [ ] D、UIcontrol与UIView都是直接继承于UIResponder
6.下列UIView的方法中,哪一个在iOS5.0前后的系统调用机制不同:[单选题]
  • [ ] A、addSubView
  • [x] B、layoutSubView
  • [ ] C、drawRect
  • [ ] D、removeFromSuperView
7.构造UIImage的方法中,占用内存最大的哪个方法:[单选题]
  • [x] A、imageNamed
  • [ ] B、imageWithContentsOfFile
  • [ ] C、imageWithData
  • [ ] D、三者一样大
8.下面哪些方法是UITableViewdelegate方法:[多选题]
  • [x] A、(NSInteger)tableview:(UITableView)tableview numberOfRowsInSecion:(NSInteger)section;
  • [x] B、(UITableViewCell )tableview:(UITableView)tableview cellForRowAtIndexPath:(NSIndexPath )indexPath;
  • [x] C、(CGFloat)tableview:(UITableView)tableview heightForRowAtIndexPath:(NSIndexPath *)indexPath;
  • [x] D、(void)tableview:(UITableView)tableview didSelectRowAtIndexPath:(NSIndexPath *)indexPath;
9.UIResponderUIView的父类?:[单选题]
  • [x] A、正确
  • [ ] B、错误
10.UIControlUIView的父类?:[单选题]
  • [ ] A、正确
  • [x] B、错误
11.UITableView中cell的复用是由几个数组实现的:[单选题]
  • [ ] A、1
  • [x] B、2
  • [ ] C、3
  • [ ] D、4
12.点击Button 响应链中最终得到响应的是:[单选题]
  • [ ] A、window
  • [x] B、Application
  • [ ] C、AppDelegate
  • [ ] D、UIViewController
13.在UIKit中,framebounds的区别是:[单选题]
  • [ ] A、frame是bounds的别名
  • [ ] B、frame是bounds的继承类
  • [x] C、frame的参考系是父视图坐标系,bounds的参考系是自身的坐标
  • [ ] D、frame的参考系是自身坐标,bounds的参考系是父视图的坐标
14.UIViewController在显示过程中,各个方法的调用顺序是:[单选题]
  • [x] A、init -> viewDidLoad -> viewDidAppear -> viewDidUnload
  • [ ] B、init -> viewDidAppear -> viewDidLoad -> viewDidUnload
  • [ ] C、init -> viewDidLoad -> viewDidUnload -> viewDidAppear
  • [ ] D、init -> viewDidAppear -> viewDidUnload -> viewDidAppear
15.使用imageNamed方法创建UIImage对象时,与普通的init方法有什么区别:[单选题]
  • [ ] A、没有区别.只是为了方便
  • [ ] B、imageNamed方法只是创建了一个指针,没有分配其他内存
  • [x] C、imageNamed方法将图片加载到内存中后不再释放
  • [ ] D、imageNamed方法将使用完图片后立即释放
16.在没有navigationController的情况下,要从一个ViewController 切换到另一个ViewController应该:[单选题]
  • [ ] A、[self.navigationController pushViewController: nextViewController animated:YES];
  • [ ] B、[self.view addSubview:nextViewController.view];
  • [ ] C、[self pushViewController: nextViewController animated:YES];
  • [x] D、[self presentModalViewController: nextViewController animated:YES];
17.什么是key window:[单选题]
  • [ ] A、App中唯一的那个UIWindow对象
  • [ ] B、可以指定一个key的UIWindow
  • [ ] C、可以接收到键盘输入等事件的UIWindow
  • [x] D、不可以隐藏的那个UIWindow对象
18.UIButton从子类到父类一次继承自:[单选题]
  • [ ] A、UIView -> UIViewController -> UIcontroller
  • [ ] B、UIResponder -> UIControl -> UIView
  • [ ] C、UIControl -> UIResponder -> UIViewController
  • [x] D、UIControl -> UIView -> UIResponder
19.以下关于UIViewCALayer描述正确的是:[多选题]
  • [x] A、UIView之所以能够显示,是因为其内部的CALayer层对象。
  • [x] B、UIView真正的绘图部分,由一个CALayer类来管理。
  • [ ] C、无需通过CALayer,即可给UIView添加阴影,圆角大小、边框宽度和颜色等。
  • [x] D、访问UIView根绘图和坐标有关的属性,例如 frame、bounds等,实际上内部都是在访问它所包含的CALayer的相关属性。
20.UIWindow提供一个画内容的表面,是所有其他视图的根容器,每个应用程序只能拥有一个窗口?:[判断题]
  • [ ] A、正确
  • [x] B、错误
21.UIView视图是所有控件的父类。控件用于响应用户的交互,而UIView则负责内容的显示和布局?:[判断题]
  • [x] A、正确
  • [ ] B、错误
22.UIControl类几乎是所有交互控件的父类,如按钮、滑块、文本框等。所以UIControl类负责根据触摸事件触发相应的动作?:[判断题]
  • [x] A、正确
  • [ ] B、错误
23.iOS应用程序启动后,创建的第一个视图控件就是UIWindow?:[判断题]
  • [x] A、正确
  • [ ] B、错误
24.在iOS应用程序中,窗口对象并没有像关闭框标题框这样的区域,所以用户不能直接对其进行关闭?:[判断题]
  • [x] A、正确
  • [ ] B、错误
25.在macOS中,NSWindow的父类是NSResponder。在iOS系统中,UIWindow的父类是UIResponder?:[判断题]
  • [ ] A、正确
  • [x] B、错误
26.在macOS中,NSWindow的父类是NSResponder。在iOS系统中,UIWindow的父类是UIView?:[判断题]
  • [x] A、正确
  • [ ] B、错误
27.UIViewalpha属性是一个浮点值,取值范围在0~1.0,表示从完全透明完全不透明:[判断题]
  • [x] A、正确
  • [ ] B、错误
28.当将UIViewalpha属性设置为0之后,以下描述正确的是:[多选题]
  • [x] A、当前的UIView及其子视图都会被隐藏,而不管子视图的alpha值是多少。
  • [ ] B、当前的UIView会被隐藏,而子视图不会受到父视图alpha值的影响。
  • [ ] C、当前的UIView不会从响应者链中移除。仍然可以接受触摸事件。
  • [x] D、当前的UIView会从响应者链中移除。而响应者链中的下一个会成为响应者。
29.当将UIViewisHidden属性设置为true之后,以下描述正确的是:[多选题]
  • [x] A、当前的UIView及其子视图都会被隐藏,而不管子视图的hidden值是多少。
  • [ ] B、当前的UIView会被隐藏,而子视图不会受到父视图isHidden值的影响。
  • [x] C、当前的UIView会从响应者链中移除。而响应者链中的下一个会成为响应者。
  • [ ] D、当前的UIView不会从响应者链中移除。仍然可以接受触摸事件。
30.在默认情况下,当向一个视图中添加一个子视图,如果子视图的区域超出了父视图的范围,子视图超出的部分仍然会在屏幕上正常显示?:[判断题]
  • [x] A、正确
  • [ ] B、错误
31.在iOS坐标系统中,坐标的原点位于:[单选题]
  • [ ] A、左下角
  • [ ] B、右上角
  • [x] C、左上角
  • [ ] D、右下角
32.关于UIViewframebounds属性,以下描述正确的是:[多选题]
  • [x] A、UIView的frame(origin,size)属性,定义了一个矩形,描述一个UIView的大小和父坐标系的位置。
  • [ ] B、UIView的frame(origin,size)属性,定义了一个矩形,描述一个UIView的大小和自身坐标系的位置。
  • [x] C、UIView的bounds(origin,size)属性,定义了一个矩形,描述一个UIView的大小和自身坐标系的位置。
  • [ ] D、UIView的bounds(origin,size)属性,定义了一个矩形,描述一个UIView的大小和父坐标系的位置。
33.在对UIView视图进行放大、缩小或旋转时。center属性的值会发生改变?:[判断题]
  • [ ] A、正确
  • [x] B、错误
34.通过CGAffineTransform仿射转换,可以对UIView视图进行哪些变换的操作:[多选题]
  • [x] A、缩放
  • [x] B、旋转
  • [ ] C、隐藏
  • [x] D、位移
35.UIViewController包含以下哪些功能?[多选题]
  • [x] A、UIViewController类负责创建其管理的视图,并在内存较低时将它们从内容中移出。
  • [x] B、可以通过视图控制器来将新的视图内容,以模态窗口的方式显示在当前视图的上方。
  • [x] C、视图控制器可以响应设备的方向变化,对视图进行相应的调整。以适应新的方向。
  • [x] D、一些特殊的视图控制器,如导航视图控制器、标签视图控制器、可使视图的管理更加方便和规范。
36.关于UITabBarController,以下描述正确的是:[多选题]
  • [x] A、UITabBarController不能添加到别的视图控制器中。
  • [ ] B、UITabBarController可以添加到别的视图控制器中。
  • [x] C、UITabBarController的Tab bar可以放置在屏幕的底部或者顶部。
  • [ ] D、UITabBarController的Tab bar只能放置在屏幕的底部。
37.关于UINavigationController,以下描述正确的是:[多选题]
  • [x] A、UINavigationController导航控制器用于显示多屏并具有一定层次结构的内容,是构建分成应用程序的主要工具。
  • [x] B、UINavigationController维护了一个视图控制器栈,所有的子视图控制器都在于堆栈中。
  • [x] C、和UITabBarController相比,UINavigationController是作为栈来实现的。它更适合用于处理和显示分层的数据。
  • [x] D、UINavigationController导航控制器在管理、切入和切出多个内容页面,与UITabBarController类似。
38.UIControl类的UIControlEvent主要包含哪三种事件?:[多选题]
  • [ ] A、基于通知的控件事件
  • [x] B、基于值得控件事件
  • [x] C、基于触摸的控件事件
  • [x] D、基于编辑的控件事件
39.UIButtonUIView的一个子类?:[判断题]
  • [x] A、正确
  • [ ] B、错误
40.Target-Action机制可以对同一个控件绑定多个Action:[判断题]
  • [x] A、正确
  • [ ] B、错误
41.如果你的视图并没有指定tintColor属性,那么这个使用将使用父类中的tintColor属性?:[判断题]
  • [x] A、正确
  • [ ] B、错误
42.UIButton中受到tintColor影响的范围有titleimage颜色?:[判断题]
  • [x] A、正确
  • [ ] B、错误
43.以下关于NSLineBreakMode枚举成员,描述正确的是:[多选题]
  • [x] A、ByWordWrapping表示以单词为显示单位显示,后面部分省略不显示
  • [x] B、ByCharWrapping表示以字符为显示单位显示,后面部分省略不显示
  • [x] C、ByClipping表示剪切与文本宽度相同的内容长度,后半部分被删除
  • [x] D、ByTruncatingHead 表示开头省略,显示尾部文字内容
44.UISwitch大小设置是无效的:[判断题]
  • [x] A、正确
  • [ ] B、错误
45.UITextField支持代理模式delegate,但是不支持Target-Action的机制?[判断题]
  • [ ] A、正确
  • [x] B、错误
46.UITableView可用于以下哪些场合:[多选题]
  • [x] A、方便用户浏览有层次结构的数据
  • [x] B、提供一个可供选择的列表
  • [x] C、显示一系列数据地索引列表
  • [x] D、利用分组结构,展示细节信息和更详细的设置
47.开发者可以对UITableViewCell进行哪些操作:[多选题]
  • [x] A、自定义单元格的文字标题、图标、背景灯属性。
  • [x] B、对单元格进行选择和高亮操作。
  • [x] C、配置单元格的附件视图。
  • [x] D、对单元格进行添加、删除、改变位置等操作。
48.以下关于UICollectionViewUICollectionViewController,描述正确的是:[多选题]
  • [x] A、UICollectionView和UICollectionViewController类是iOS 6 新引进的API。
  • [x] B、标准的UICollectionView对象包括三个部分:Cells、Supplementary Views、Decoration Views,这三部分都是UIView的子类。
  • [x] C、UICollectionView类负责管理数据地有序集合,并使用自定义布局的模型呈现这些数据。
  • [x] D、UICollectionView 除了多列布局之外,还可以实现平铺的布局、圆形的布局和更多的自定义布局。
49.在iOS中只有继承UIResponder类的对象才能处理触摸事件?[判断题]
  • [x] A、正确
  • [ ] B、错误
50.UIViewController视图控制器、UIApplication都是继承UIResponder?[判断题]
  • [x] A、正确
  • [ ] B、错误
51.如果UIWindow对象无法处理某个触摸事件,则该触摸事件将被丢弃[判断题]
  • [ ] A、正确
  • [x] B、错误
52.UIGestureRecognizer类包含以下哪些手势:[多选题]
  • [x] A、UIPanGestureRecognizer
  • [x] B、UIRotationGestureRecognizer
  • [x] C、UILongPressGestureRecognizer
  • [x] D、UISwipeGestureRecognizer局。
53.UITapGestureRecognizer属于非连续类型的手势?[判断题]
  • [x] A、正确
  • [ ] B、错误
54.UIPinchGestureRecognizer属于非连续类型的手势?[判断题]
  • [ ] A、正确
  • [x] B、错误
55.Storyboard故事版功能是在哪个iOS版本发布的:[单选题]
  • [ ] A、iOS4
  • [x] B、iOS5
  • [ ] C、iOS6
  • [ ] D、iOS7
56.以下对Storyboard故事版功能 描述正确的是[多选题]
  • [x] A、通过简单地拖拽、往视图控制器添加各种界面控件,可以降低学习的难度。提供开发工作的效率和趣味。使开发工作更加人性化。
  • [x] B、可以更好地查看和理解项目中所有页面的外观,以及页面之间的链接跳转关系。
  • [x] C、Storyboard快速实现了视图之间的跳转关系。
  • [x] D、通过重写 prepareForSegue方法,将视图控制器的所有跳转逻辑都汇聚一起,方便进行统一的界面跳转和参数传递。
57.以下对Storyboard故事版功能 描述正确的是[多选题]
  • [x] A、Storyboard通过 Cell ProtoType原型,以及Static静态Cell的特性,让表格控制器实现起来更容易
  • [x] B、通过Storyboard可以通过拖拽建立约束关系,从而快速实现各分辨率的适配。
  • [x] C、当Storyboard包含越来越多的视图控制器时,打得开Storyboard将越来越慢。
  • [x] D、通过将常见的功能比如注册、分享模块独立成一个Storyboard,可以实现功能的模块化和重复利用。
58.Storyboard事实上是由XML 可扩展标记语言构成的文本文件[判断题]
  • [x] A、正确
  • [ ] B、错误
59.使用Single View Application模板创建的项目,将自带哪两个Storyboard文件?[多选题]
  • [ ] A、Home.storyboard
  • [x] B、Main.storyboard
  • [ ] C、Index.storyboard
  • [x] D、LaunchScreen.storyboard
60.以下哪种标记表示来自storyboard连接方法?[单选题]
  • [ ] A、@IBMethod
  • [ ] B、@IBOutlet
  • [x] C、@IBAction
  • [ ] D、@IBProperty
61.在LaunchScreen.storyboard故事版中,不能使用UIWebView,因为这里不能使用网络的。[判断题]
  • [x] A、正确
  • [ ] B、错误
62.可以为IPhoneiPad指定不同的LaunchScreen.storyboard故事版[判断题]
  • [ ] A、正确
  • [x] B、错误
63.LaunchScreen.storyboard故事版可以使用UIView或者UIViewController,而自定义的子类则不可以使用?[判断题]
  • [x] A、正确
  • [] B、错误
64.CALayer 是被定义在那个框架中的?[单选题]
  • [ ] A、UIKit
  • [ ] B、Foundation
  • [x] C、QuartCore
  • [ ] D、Core Image
65.通过操作CALayer对象,可以很方便地天正UIView的哪些界面属性?[多选题]
  • [x] A、阴影
  • [x] B、圆角
  • [x] C、边框
  • [x] D、渐变色
66.UIColorUIImage 是定义在哪个框架中的[单选题]
  • [ ] A、Foundation
  • [ ] B、CoreGraphics
  • [x] C、UIKit
  • [ ] D、Core Image
67.UIKit只能在iOS平台使用,无法在macOS平台使用?[判断题]
  • [x] A、正确
  • [ ] B、错误
68.QuartCore框架可以直接使用UIColorUIImage?[判断题]
  • [ ] A、正确
  • [x] B、错误
69.CALayerUIView一样也可以处理用户的触摸事件?[判断题]
  • [ ] A、正确
  • [x] B、错误
70.UIView可以通过subviews属性访问所有的子视图,类似地,CALayer也可以通过sublayers属性访问所有的子层?[判断题]
  • [x] A、正确
  • [ ] B、错误
71.UIView可以通过superview属性访问父视图,类似地,CALayer也可以通过superlayers属性访问所有的父层?[判断题]
  • [x] A、正确
  • [ ] B、错误
72.如果两个UIView父子关系,那么它们内部的CALayer也是父子关系吗?[判断题]
  • [x] A、正确
  • [ ] B、错误
73.因为UIView对象已经是它内部根层的delegate,所以不能在将某个UIView设置CALayerdelegate?[判断题]
  • [x] A、正确
  • [ ] B、错误
74.UIKit框架位于iOS系统架构的那一层?[单选题]
  • [ ] A、核心操作层(Core OS layer)
  • [ ] B、核心服务层 (Core services layer)
  • [ ] C、媒体层(Media layer)
  • [x] D、可触摸层(Cocoa Touch layer)
75.iOS的用户界面有哪几种创建方式?[多选题]
  • [x] A、Xib
  • [x] B、Storyboard
  • [ ] C、PhotoShop
  • [x] D、代码创建
76.IPhone X的分辨率比例是?[单选题]
  • [ ] A、4:3
  • [ ] B、16:9
  • [x] C、18:9
  • [ ] D、5:3
77.以下关于IPhone X尺寸 描述正确的是?[多选题]
  • [x] A、高度增加了145pt,变成812pt
  • [x] B、状态栏高度由20pt变成44pt
  • [x] C、物理分辨率为1125px * 2436px
  • [x] D、iPhoneX屏幕是5.8英寸
78.iOS11之前导航栏默认的高度为?[单选题]
  • [ ] A、32pt
  • [ ] B、48pt
  • [x] C、64pt
  • [ ] D、96pt
79.iOS11之后如果设置自prefersLargeTttles = YES,则导航栏的高度为?[单选题]
  • [ ] A、32pt
  • [ ] B、48pt
  • [ ] C、64pt
  • [x] D、96pt
80.在iOS11上,如果APP在启动时图标的四周出现黑色,是因为图标的四角的圆角,并且周围为透明像素。[单选题]
  • [x] A、正确
  • [ ] B、错误
81.以下哪个属性是iOS11开始引入的,用来控制safeAreaInsets是否加到layoutMargins上[单选题]
  • [ ] A、layoutMargins
  • [ ] B、directionalLayoutMargins
  • [ ] C、preservesSuperviewLayoutMargins
  • [x] D、insetsLayoutMarginsFromSafeArea
82.以下哪个属性是iOS8开始引入的,用来指定视图和它的子视图之间的边距[单选题]
  • [x] A、layoutMargins
  • [ ] B、directionalLayoutMargins
  • [ ] C、preservesSuperviewLayoutMargins
  • [ ] D、insetsLayoutMarginsFromSafeArea
83.LayoutSubViews在什么时候被调用?[判断题]
  • [x] A、当View本身的frame改变时
  • [ ] B、当View本身的bounds改变时

    推荐阅读