为了账号安全,请及时绑定邮箱和手机立即绑定

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

标签:
iOS 面试 Swift

请添加图片描述

@TOC

笔试题 613题

⭐️③、笔试题-界面篇(83题)

1.UIViewController的didReceiveMemoryWaring方法什么时候会被调用:[单选题]

  • A、外接来电
  • B、系统错误
  • C、系统内存不足
  • D、系统CPU被占用100%

2.下面哪个在iPhone应用程序开发时不能使用:[单选题]

  • A、UITableViewController
  • B、UINavigationController
  • C、UISplitViewController
  • D、UITableViewController

3.下面不是标准UIButton类型的是:[单选题]

  • A、UIButtonTypeRoundedRect
  • B、UIButtonTypeContacAdd
  • C、UIButtonTypeRadio
  • D、UIButtonTypeInfoLight

4.在给UIButton设置图片时,为了让图片适应按钮的大小,需要将按钮contentMode设置为:[单选题]

  • A、UIViewContentModeScaleToFill
  • B、UIViewContentModeScaleAspectFit
  • C、UIViewContentModeScaleAspectFill
  • D、UIViewContentModecenter

5.关于UIControlUIView之间的关系,下面说法正确的是:[单选题]

  • A、UIcontrol继承于UIView
  • B、UIView继承于UIcontrol
  • C、UIcontrol与UIView之间没有继承关系
  • D、UIcontrol与UIView都是直接继承于UIResponder

6.下列UIView的方法中,哪一个在iOS5.0前后的系统调用机制不同:[单选题]

  • A、addSubView
  • B、layoutSubView
  • C、drawRect
  • D、removeFromSuperView

7.构造UIImage的方法中,占用内存最大的哪个方法:[单选题]

  • A、imageNamed
  • B、imageWithContentsOfFile
  • C、imageWithData
  • D、三者一样大

8.下面哪些方法是UITableViewdelegate方法:[多选题]

  • A、(NSInteger)tableview:(UITableView)tableview numberOfRowsInSecion:(NSInteger)section;
  • B、(UITableViewCell *)tableview:(UITableView)tableview cellForRowAtIndexPath:(NSIndexPath *)indexPath;
  • C、(CGFloat)tableview:(UITableView)tableview heightForRowAtIndexPath:(NSIndexPath *)indexPath;
  • D、(void)tableview:(UITableView)tableview didSelectRowAtIndexPath:(NSIndexPath *)indexPath;

9.UIResponderUIView的父类?:[单选题]

  • A、正确
  • B、错误

10.UIControlUIView的父类?:[单选题]

  • A、正确
  • B、错误

11.UITableView中cell的复用是由几个数组实现的:[单选题]

  • A、1
  • B、2
  • C、3
  • D、4

12.点击Button 响应链中最终得到响应的是:[单选题]

  • A、window
  • B、Application
  • C、AppDelegate
  • D、UIViewController

13.在UIKit中,framebounds的区别是:[单选题]

  • A、frame是bounds的别名
  • B、frame是bounds的继承类
  • C、frame的参考系是父视图坐标系,bounds的参考系是自身的坐标
  • D、frame的参考系是自身坐标,bounds的参考系是父视图的坐标

14.UIViewController在显示过程中,各个方法的调用顺序是:[单选题]

  • 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方法只是创建了一个指针,没有分配其他内存
  • 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];
  • D、[self presentModalViewController: nextViewController animated:YES];

17.什么是key window:[单选题]

  • A、App中唯一的那个UIWindow对象
  • B、可以指定一个key的UIWindow
  • C、可以接收到键盘输入等事件的UIWindow
  • D、不可以隐藏的那个UIWindow对象

18.UIButton从子类到父类一次继承自:[单选题]

  • A、UIView -> UIViewController -> UIcontroller
  • B、UIResponder -> UIControl -> UIView
  • C、UIControl -> UIResponder -> UIViewController
  • D、UIControl -> UIView -> UIResponder

19.以下关于UIViewCALayer描述正确的是:[多选题]

  • A、UIView之所以能够显示,是因为其内部的CALayer层对象。
  • B、UIView真正的绘图部分,由一个CALayer类来管理。
  • C、无需通过CALayer,即可给UIView添加阴影,圆角大小、边框宽度和颜色等。
  • D、访问UIView根绘图和坐标有关的属性,例如 frame、bounds等,实际上内部都是在访问它所包含的CALayer的相关属性。

20.UIWindow提供一个画内容的表面,是所有其他视图的根容器,每个应用程序只能拥有一个窗口?:[判断题]

  • A、正确
  • B、错误

21.UIView视图是所有控件的父类。控件用于响应用户的交互,而UIView则负责内容的显示和布局?:[判断题]

  • A、正确
  • B、错误

22.UIControl类几乎是所有交互控件的父类,如按钮、滑块、文本框等。所以UIControl类负责根据触摸事件触发相应的动作?:[判断题]

  • A、正确
  • B、错误

23.iOS应用程序启动后,创建的第一个视图控件就是UIWindow?:[判断题]

  • A、正确
  • B、错误

24.在iOS应用程序中,窗口对象并没有像关闭框标题框这样的区域,所以用户不能直接对其进行关闭?:[判断题]

  • A、正确
  • B、错误

25.在macOS中,NSWindow的父类是NSResponder。在iOS系统中,UIWindow的父类是UIResponder?:[判断题]

  • A、正确
  • B、错误

26.在macOS中,NSWindow的父类是NSResponder。在iOS系统中,UIWindow的父类是UIView?:[判断题]

  • A、正确
  • B、错误

27.UIViewalpha属性是一个浮点值,取值范围在0~1.0,表示从完全透明完全不透明:[判断题]

  • A、正确
  • B、错误

28.当将UIViewalpha属性设置为0之后,以下描述正确的是:[多选题]

  • A、当前的UIView及其子视图都会被隐藏,而不管子视图的alpha值是多少。
  • B、当前的UIView会被隐藏,而子视图不会受到父视图alpha值的影响。
  • C、当前的UIView不会从响应者链中移除。仍然可以接受触摸事件。
  • D、当前的UIView会从响应者链中移除。而响应者链中的下一个会成为响应者。

29.当将UIViewisHidden属性设置为true之后,以下描述正确的是:[多选题]

  • A、当前的UIView及其子视图都会被隐藏,而不管子视图的hidden值是多少。
  • B、当前的UIView会被隐藏,而子视图不会受到父视图isHidden值的影响。
  • C、当前的UIView会从响应者链中移除。而响应者链中的下一个会成为响应者。
  • D、当前的UIView不会从响应者链中移除。仍然可以接受触摸事件。

30.在默认情况下,当向一个视图中添加一个子视图,如果子视图的区域超出了父视图的范围,子视图超出的部分仍然会在屏幕上正常显示?:[判断题]

  • A、正确
  • B、错误

31.在iOS坐标系统中,坐标的原点位于:[单选题]

  • A、左下角
  • B、右上角
  • C、左上角
  • D、右下角

32.关于UIViewframebounds属性,以下描述正确的是:[多选题]

  • A、UIView的frame(origin,size)属性,定义了一个矩形,描述一个UIView的大小和父坐标系的位置。
  • B、UIView的frame(origin,size)属性,定义了一个矩形,描述一个UIView的大小和自身坐标系的位置。
  • C、UIView的bounds(origin,size)属性,定义了一个矩形,描述一个UIView的大小和自身坐标系的位置。
  • D、UIView的bounds(origin,size)属性,定义了一个矩形,描述一个UIView的大小和父坐标系的位置。

33.在对UIView视图进行放大、缩小或旋转时。center属性的值会发生改变?:[判断题]

  • A、正确
  • B、错误

34.通过CGAffineTransform仿射转换,可以对UIView视图进行哪些变换的操作:[多选题]

  • A、缩放
  • B、旋转
  • C、隐藏
  • D、位移

35.UIViewController包含以下哪些功能?[多选题]

  • A、UIViewController类负责创建其管理的视图,并在内存较低时将它们从内容中移出。
  • B、可以通过视图控制器来将新的视图内容,以模态窗口的方式显示在当前视图的上方。
  • C、视图控制器可以响应设备的方向变化,对视图进行相应的调整。以适应新的方向。
  • D、一些特殊的视图控制器,如导航视图控制器、标签视图控制器、可使视图的管理更加方便和规范。

36.关于UITabBarController,以下描述正确的是:[多选题]

  • A、UITabBarController不能添加到别的视图控制器中。
  • B、UITabBarController可以添加到别的视图控制器中。
  • C、UITabBarController的Tab bar可以放置在屏幕的底部或者顶部。
  • D、UITabBarController的Tab bar只能放置在屏幕的底部。

37.关于UINavigationController,以下描述正确的是:[多选题]

  • A、UINavigationController导航控制器用于显示多屏并具有一定层次结构的内容,是构建分成应用程序的主要工具。
  • B、UINavigationController维护了一个视图控制器栈,所有的子视图控制器都在于堆栈中。
  • C、和UITabBarController相比,UINavigationController是作为栈来实现的。它更适合用于处理和显示分层的数据。
  • D、UINavigationController导航控制器在管理、切入和切出多个内容页面,与UITabBarController类似。

38.UIControl类的UIControlEvent主要包含哪三种事件?:[多选题]

  • A、基于通知的控件事件
  • B、基于值得控件事件
  • C、基于触摸的控件事件
  • D、基于编辑的控件事件

39.UIButtonUIView的一个子类?:[判断题]

  • A、正确
  • B、错误

40.Target-Action机制可以对同一个控件绑定多个Action:[判断题]

  • A、正确
  • B、错误

41.如果你的视图并没有指定tintColor属性,那么这个使用将使用父类中的tintColor属性?:[判断题]

  • A、正确
  • B、错误

42.UIButton中受到tintColor影响的范围有titleimage颜色?:[判断题]

  • A、正确
  • B、错误

43.以下关于NSLineBreakMode枚举成员,描述正确的是:[多选题]

  • A、ByWordWrapping表示以单词为显示单位显示,后面部分省略不显示
  • B、ByCharWrapping表示以字符为显示单位显示,后面部分省略不显示
  • C、ByClipping表示剪切与文本宽度相同的内容长度,后半部分被删除
  • D、ByTruncatingHead 表示开头省略,显示尾部文字内容

44.UISwitch大小设置是无效的:[判断题]

  • A、正确
  • B、错误

45.UITextField支持代理模式delegate,但是不支持Target-Action的机制?[判断题]

  • A、正确
  • B、错误

46.UITableView可用于以下哪些场合:[多选题]

  • A、方便用户浏览有层次结构的数据
  • B、提供一个可供选择的列表
  • C、显示一系列数据地索引列表
  • D、利用分组结构,展示细节信息和更详细的设置

47.开发者可以对UITableViewCell进行哪些操作:[多选题]

  • A、自定义单元格的文字标题、图标、背景灯属性。
  • B、对单元格进行选择和高亮操作。
  • C、配置单元格的附件视图。
  • D、对单元格进行添加、删除、改变位置等操作。

48.以下关于UICollectionViewUICollectionViewController,描述正确的是:[多选题]

  • A、UICollectionView和UICollectionViewController类是iOS 6 新引进的API。
  • B、标准的UICollectionView对象包括三个部分:Cells、Supplementary Views、Decoration Views,这三部分都是UIView的子类。
  • C、UICollectionView类负责管理数据地有序集合,并使用自定义布局的模型呈现这些数据。
  • D、UICollectionView 除了多列布局之外,还可以实现平铺的布局、圆形的布局和更多的自定义布局。

49.在iOS中只有继承UIResponder类的对象才能处理触摸事件?[判断题]

  • A、正确
  • B、错误

50.UIViewController视图控制器、UIApplication都是继承UIResponder?[判断题]

  • A、正确
  • B、错误

51.如果UIWindow对象无法处理某个触摸事件,则该触摸事件将被丢弃[判断题]

  • A、正确
  • B、错误

52.UIGestureRecognizer类包含以下哪些手势:[多选题]

  • A、UIPanGestureRecognizer
  • B、UIRotationGestureRecognizer
  • C、UILongPressGestureRecognizer
  • D、UISwipeGestureRecognizer局。

53.UITapGestureRecognizer属于非连续类型的手势?[判断题]

  • A、正确
  • B、错误

54.UIPinchGestureRecognizer属于非连续类型的手势?[判断题]

  • A、正确
  • B、错误

55.Storyboard故事版功能是在哪个iOS版本发布的:[单选题]

  • A、iOS4
  • B、iOS5
  • C、iOS6
  • D、iOS7

56.以下对Storyboard故事版功能 描述正确的是[多选题]

  • A、通过简单地拖拽、往视图控制器添加各种界面控件,可以降低学习的难度。提供开发工作的效率和趣味。使开发工作更加人性化。
  • B、可以更好地查看和理解项目中所有页面的外观,以及页面之间的链接跳转关系。
  • C、Storyboard快速实现了视图之间的跳转关系。
  • D、通过重写 prepareForSegue方法,将视图控制器的所有跳转逻辑都汇聚一起,方便进行统一的界面跳转和参数传递。

57.以下对Storyboard故事版功能 描述正确的是[多选题]

  • A、Storyboard通过 Cell ProtoType原型,以及Static静态Cell的特性,让表格控制器实现起来更容易
  • B、通过Storyboard可以通过拖拽建立约束关系,从而快速实现各分辨率的适配。
  • C、当Storyboard包含越来越多的视图控制器时,打得开Storyboard将越来越慢。
  • D、通过将常见的功能比如注册、分享模块独立成一个Storyboard,可以实现功能的模块化和重复利用。

58.Storyboard事实上是由XML 可扩展标记语言构成的文本文件[判断题]

  • A、正确
  • B、错误

59.使用Single View Application模板创建的项目,将自带哪两个Storyboard文件?[多选题]

  • A、Home.storyboard
  • B、Main.storyboard
  • C、Index.storyboard
  • D、LaunchScreen.storyboard

60.以下哪种标记表示来自storyboard连接方法?[单选题]

  • A、@IBMethod
  • B、@IBOutlet
  • C、@IBAction
  • D、@IBProperty

61.在LaunchScreen.storyboard故事版中,不能使用UIWebView,因为这里不能使用网络的。[判断题]

  • A、正确
  • B、错误

62.可以为IPhoneiPad指定不同的LaunchScreen.storyboard故事版[判断题]

  • A、正确
  • B、错误

63.LaunchScreen.storyboard故事版可以使用UIView或者UIViewController,而自定义的子类则不可以使用?[判断题]

  • A、正确
  • [] B、错误

64.CALayer 是被定义在那个框架中的?[单选题]

  • A、UIKit
  • B、Foundation
  • C、QuartCore
  • D、Core Image

65.通过操作CALayer对象,可以很方便地天正UIView的哪些界面属性?[多选题]

  • A、阴影
  • B、圆角
  • C、边框
  • D、渐变色

66.UIColorUIImage 是定义在哪个框架中的[单选题]

  • A、Foundation
  • B、CoreGraphics
  • C、UIKit
  • D、Core Image

67.UIKit只能在iOS平台使用,无法在macOS平台使用?[判断题]

  • A、正确
  • B、错误

68.QuartCore框架可以直接使用UIColorUIImage?[判断题]

  • A、正确
  • B、错误

69.CALayerUIView一样也可以处理用户的触摸事件?[判断题]

  • A、正确
  • B、错误

70.UIView可以通过subviews属性访问所有的子视图,类似地,CALayer也可以通过sublayers属性访问所有的子层?[判断题]

  • A、正确
  • B、错误

71.UIView可以通过superview属性访问父视图,类似地,CALayer也可以通过superlayers属性访问所有的父层?[判断题]

  • A、正确
  • B、错误

72.如果两个UIView父子关系,那么它们内部的CALayer也是父子关系吗?[判断题]

  • A、正确
  • B、错误

73.因为UIView对象已经是它内部根层的delegate,所以不能在将某个UIView设置CALayerdelegate?[判断题]

  • A、正确
  • B、错误

74.UIKit框架位于iOS系统架构的那一层?[单选题]

  • A、核心操作层(Core OS layer)
  • B、核心服务层 (Core services layer)
  • C、媒体层(Media layer)
  • D、可触摸层(Cocoa Touch layer)

75.iOS的用户界面有哪几种创建方式?[多选题]

  • A、Xib
  • B、Storyboard
  • C、PhotoShop
  • D、代码创建

76.IPhone X的分辨率比例是?[单选题]

  • A、4:3
  • B、16:9
  • C、18:9
  • D、5:3

77.以下关于IPhone X尺寸 描述正确的是?[多选题]

  • A、高度增加了145pt,变成812pt
  • B、状态栏高度由20pt变成44pt
  • C、物理分辨率为1125px * 2436px
  • D、iPhoneX屏幕是5.8英寸

78.iOS11之前导航栏默认的高度为?[单选题]

  • A、32pt
  • B、48pt
  • C、64pt
  • D、96pt

79.iOS11之后如果设置自prefersLargeTttles = YES,则导航栏的高度为?[单选题]

  • A、32pt
  • B、48pt
  • C、64pt
  • D、96pt

80.在iOS11上,如果APP在启动时图标的四周出现黑色,是因为图标的四角的圆角,并且周围为透明像素。[单选题]

  • A、正确
  • B、错误

81.以下哪个属性是iOS11开始引入的,用来控制safeAreaInsets是否加到layoutMargins上[单选题]

  • A、layoutMargins
  • B、directionalLayoutMargins
  • C、preservesSuperviewLayoutMargins
  • D、insetsLayoutMarginsFromSafeArea

82.以下哪个属性是iOS8开始引入的,用来指定视图和它的子视图之间的边距[单选题]

  • A、layoutMargins
  • B、directionalLayoutMargins
  • C、preservesSuperviewLayoutMargins
  • D、insetsLayoutMarginsFromSafeArea

83.LayoutSubViews在什么时候被调用?[判断题]

  • A、当View本身的frame改变时
  • B、当View本身的bounds改变时
点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
移动开发工程师
手记
粉丝
3
获赞与收藏
4

关注作者,订阅最新文章

阅读免费教程

  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消