前言:
iOS面試題 一共分為筆試題和面試題兩部分 筆試題 一共分為10個(gè) 總共613題 面試題 一共400題 筆試題 一個(gè)10個(gè)系列
為自己的面試,為自己的跳槽,加油吧 iOS開(kāi)發(fā)
簡(jiǎn)歷模板+最新iOS題目+提升視頻:docs.qq.com/doc/DVWlQam9Qd3B1cEF2
筆試題
1.UIViewController的didReceiveMemoryWaring方法什么時(shí)候會(huì)被調(diào)用:[單選題]
- A、外接來(lái)電
- B、系統(tǒng)錯(cuò)誤
- C、
系統(tǒng)內(nèi)存不足 - D、系統(tǒng)CPU被占用100%
2.下面哪個(gè)類在iPhone應(yīng)用程序開(kāi)發(fā)時(shí)不能使用:[單選題]
- A、UITableViewController
- B、UINavigationController
- C、
UISplitViewController - D、UITableViewController
3.下面不是標(biāo)準(zhǔn)UIButton類型的是:[單選題]
- A、UIButtonTypeRoundedRect
- B、UIButtonTypeContacAdd
- C、
UIButtonTypeRadio - D、UIButtonTypeInfoLight
4.在給UIButton設(shè)置圖片時(shí),為了讓圖片適應(yīng)按鈕的大小,需要將按鈕contentMode設(shè)置為:[單選題]
- A、UIViewContentModeScaleToFill
- B、UIViewContentModeScaleAspectFit
- C、
UIViewContentModeScaleAspectFill - D、UIViewContentModecenter
5.關(guān)于UIControl和UIView之間的關(guān)系,下面說(shuō)法正確的是:[單選題]
- A、
UIcontrol繼承于UIView - B、UIView繼承于UIcontrol
- C、UIcontrol與UIView之間沒(méi)有繼承關(guān)系
- D、UIcontrol與UIView都是直接繼承于UIResponder
6.下列UIView的方法中,哪一個(gè)在iOS5.0前后的系統(tǒng)調(diào)用機(jī)制不同:[單選題]
- A、addSubView
- B、
layoutSubView - C、drawRect
- D、removeFromSuperView
7.構(gòu)造UIImage的方法中,占用內(nèi)存最大的哪個(gè)方法:[單選題]
- A、
imageNamed - B、imageWithContentsOfFile
- C、imageWithData
- D、三者一樣大
8.下面哪些方法是UITableView的delegate方法:[多選題]
- 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.UIResponder是UIView的父類?:[單選題]
* A、正確
- B、錯(cuò)誤
10.UIControl是UIView的父類?:[單選題]
- A、正確
* B、錯(cuò)誤
11.UITableView中cell的復(fù)用是由幾個(gè)數(shù)組實(shí)現(xiàn)的:[單選題]
- A、1
* B、2 - C、3
- D、4
12.點(diǎn)擊Button 響應(yīng)鏈中最終得到響應(yīng)的是:[單選題]
- A、window
* B、Application - C、AppDelegate
- D、UIViewController
13.在UIKit中,frame和bounds的區(qū)別是:[單選題]
- A、frame是bounds的別名
- B、frame是bounds的繼承類
* C、frame的參考系是父視圖坐標(biāo)系,bounds的參考系是自身的坐標(biāo) - D、frame的參考系是自身坐標(biāo),bounds的參考系是父視圖的坐標(biāo)
14.UIViewController在顯示過(guò)程中,各個(gè)方法的調(diào)用順序是:[單選題]
* A、init -> viewDidLoad -> viewDidAppear -> viewDidUnload
- B、init -> viewDidAppear -> viewDidLoad -> viewDidUnload
- C、init -> viewDidLoad -> viewDidUnload -> viewDidAppear
- D、init -> viewDidAppear -> viewDidUnload -> viewDidAppear
15.使用imageNamed方法創(chuàng)建UIImage對(duì)象時(shí),與普通的init方法有什么區(qū)別:[單選題]
- A、沒(méi)有區(qū)別.只是為了方便
- B、imageNamed方法只是創(chuàng)建了一個(gè)指針,沒(méi)有分配其他內(nèi)存
* C、imageNamed方法將圖片加載到內(nèi)存中后不再釋放 - D、imageNamed方法將使用完圖片后立即釋放
16.在沒(méi)有navigationController的情況下,要從一個(gè)ViewController 切換到另一個(gè)ViewController應(yīng)該:[單選題]
- 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中唯一的那個(gè)UIWindow對(duì)象
- B、可以指定一個(gè)key的UIWindow
- C、可以接收到鍵盤輸入等事件的UIWindow
* D、不可以隱藏的那個(gè)UIWindow對(duì)象
18.UIButton從子類到父類一次繼承自:[單選題]
- A、UIView -> UIViewController -> UIcontroller
- B、UIResponder -> UIControl -> UIView
- C、UIControl -> UIResponder -> UIViewController
* D、UIControl -> UIView -> UIResponder
19.以下關(guān)于UIView和CALayer描述正確的是:[多選題]
* A、UIView之所以能夠顯示,是因?yàn)槠鋬?nèi)部的CALayer層對(duì)象。
* B、UIView真正的繪圖部分,由一個(gè)CALayer類來(lái)管理。
- C、無(wú)需通過(guò)CALayer,即可給UIView添加陰影,圓角大小、邊框?qū)挾群皖伾取?br>
* D、訪問(wèn)UIView根繪圖和坐標(biāo)有關(guān)的屬性,例如 frame、bounds等,實(shí)際上內(nèi)部都是在訪問(wèn)它所包含的CALayer的相關(guān)屬性。
20.UIWindow提供一個(gè)畫內(nèi)容的表面,是所有其他視圖的根容器,每個(gè)應(yīng)用程序只能擁有一個(gè)窗口?:[判斷題]
- A、正確
* B、錯(cuò)誤
21.UIView視圖是所有控件的父類。控件用于響應(yīng)用戶的交互,而UIView則負(fù)責(zé)內(nèi)容的顯示和布局?:[判斷題]
* A、正確
- B、錯(cuò)誤
22.UIControl類幾乎是所有交互控件的父類,如按鈕、滑塊、文本框等。所以UIControl類負(fù)責(zé)根據(jù)觸摸事件觸發(fā)相應(yīng)的動(dòng)作?:[判斷題]
* A、正確
- B、錯(cuò)誤
23.iOS應(yīng)用程序啟動(dòng)后,創(chuàng)建的第一個(gè)視圖控件就是UIWindow?:[判斷題]
* A、正確
- B、錯(cuò)誤
24.在iOS應(yīng)用程序中,窗口對(duì)象并沒(méi)有像關(guān)閉框或標(biāo)題框這樣的區(qū)域,所以用戶不能直接對(duì)其進(jìn)行關(guān)閉?:[判斷題]
* A、正確
- B、錯(cuò)誤
25.在macOS中,NSWindow的父類是NSResponder。在iOS系統(tǒng)中,UIWindow的父類是UIResponder?:[判斷題]
- A、正確
* B、錯(cuò)誤
26.在macOS中,NSWindow的父類是NSResponder。在iOS系統(tǒng)中,UIWindow的父類是UIView?:[判斷題]
- A、正確
- B、錯(cuò)誤
27.UIView的alpha屬性是一個(gè)浮點(diǎn)值,取值范圍在0~1.0,表示從完全透明到完全不透明:[判斷題]
* A、正確
- B、錯(cuò)誤
28.當(dāng)將UIView的alpha屬性設(shè)置為0之后,以下描述正確的是:[多選題]
* A、當(dāng)前的UIView及其子視圖都會(huì)被隱藏,而不管子視圖的alpha值是多少。
- B、當(dāng)前的UIView會(huì)被隱藏,而子視圖不會(huì)受到父視圖alpha值的影響。
- C、當(dāng)前的UIView不會(huì)從響應(yīng)者鏈中移除。仍然可以接受觸摸事件。
* D、當(dāng)前的UIView會(huì)從響應(yīng)者鏈中移除。而響應(yīng)者鏈中的下一個(gè)會(huì)成為響應(yīng)者。
29.當(dāng)將UIView的isHidden屬性設(shè)置為true之后,以下描述正確的是:[多選題]
* A、當(dāng)前的UIView及其子視圖都會(huì)被隱藏,而不管子視圖的hidden值是多少。
- B、當(dāng)前的UIView會(huì)被隱藏,而子視圖不會(huì)受到父視圖isHidden值的影響。
* C、當(dāng)前的UIView會(huì)從響應(yīng)者鏈中移除。而響應(yīng)者鏈中的下一個(gè)會(huì)成為響應(yīng)者。 - D、當(dāng)前的UIView不會(huì)從響應(yīng)者鏈中移除。仍然可以接受觸摸事件。
30.在默認(rèn)情況下,當(dāng)向一個(gè)視圖中添加一個(gè)子視圖,如果子視圖的區(qū)域超出了父視圖的范圍,子視圖超出的部分仍然會(huì)在屏幕上正常顯示?:[判斷題]
* A、正確
- B、錯(cuò)誤
31.在iOS坐標(biāo)系統(tǒng)中,坐標(biāo)的原點(diǎn)位于:[單選題]
- A、左下角
- B、右上角
* C、左上角 - D、右下角
32.關(guān)于UIView的frame和bounds屬性,以下描述正確的是:[多選題]
* A、UIView的frame(origin,size)屬性,定義了一個(gè)矩形,描述一個(gè)UIView的大小和父坐標(biāo)系的位置。
- B、UIView的frame(origin,size)屬性,定義了一個(gè)矩形,描述一個(gè)UIView的大小和自身坐標(biāo)系的位置。
* C、UIView的bounds(origin,size)屬性,定義了一個(gè)矩形,描述一個(gè)UIView的大小和自身坐標(biāo)系的位置。 - D、UIView的bounds(origin,size)屬性,定義了一個(gè)矩形,描述一個(gè)UIView的大小和父坐標(biāo)系的位置。
33.在對(duì)UIView視圖進(jìn)行放大、縮小或旋轉(zhuǎn)時(shí)。center屬性的值會(huì)發(fā)生改變?:[判斷題]
- A、正確
* B、錯(cuò)誤
34.通過(guò)CGAffineTransform仿射轉(zhuǎn)換,可以對(duì)UIView視圖進(jìn)行哪些變換的操作:[多選題]
* A、縮放
* B、旋轉(zhuǎn)
- C、隱藏
* D、位移
35.UIViewController包含以下哪些功能?[多選題]
* A、UIViewController類負(fù)責(zé)創(chuàng)建其管理的視圖,并在內(nèi)存較低時(shí)將它們從內(nèi)容中移出。
* B、可以通過(guò)視圖控制器來(lái)將新的視圖內(nèi)容,以模態(tài)窗口的方式顯示在當(dāng)前視圖的上方。
* C、視圖控制器可以響應(yīng)設(shè)備的方向變化,對(duì)視圖進(jìn)行相應(yīng)的調(diào)整。以適應(yīng)新的方向。
* D、一些特殊的視圖控制器,如導(dǎo)航視圖控制器、標(biāo)簽視圖控制器、可使視圖的管理更加方便和規(guī)范。
36.關(guān)于UITabBarController,以下描述正確的是:[多選題]
* A、UITabBarController不能添加到別的視圖控制器中。
- B、UITabBarController可以添加到別的視圖控制器中。
* C、UITabBarController的Tab bar可以放置在屏幕的底部或者頂部。
*D、UITabBarController的Tab bar只能放置在屏幕的底部。
37.關(guān)于UINavigationController,以下描述正確的是:[多選題]
* A、UINavigationController導(dǎo)航控制器用于顯示多屏并具有一定層次結(jié)構(gòu)的內(nèi)容,是構(gòu)建分成應(yīng)用程序的主要工具。
* B、UINavigationController維護(hù)了一個(gè)視圖控制器棧,所有的子視圖控制器都在于堆棧中。
* C、和UITabBarController相比,UINavigationController是作為棧來(lái)實(shí)現(xiàn)的。它更適合用于處理和顯示分層的數(shù)據(jù)。
* D、UINavigationController導(dǎo)航控制器在管理、切入和切出多個(gè)內(nèi)容頁(yè)面,與UITabBarController類似。
38.UIControl類的UIControlEvent主要包含哪三種事件?:[多選題]
- A、基于通知的控件事件
* B、基于值得控件事件
* C、基于觸摸的控件事件
* D、基于編輯的控件事件
39.UIButton是UIView的一個(gè)子類?:[判斷題]
* A、正確
- B、錯(cuò)誤
40.Target-Action機(jī)制可以對(duì)同一個(gè)控件綁定多個(gè)Action:[判斷題]
* A、正確
- B、錯(cuò)誤
41.如果你的視圖并沒(méi)有指定tintColor屬性,那么這個(gè)使用將使用父類中的tintColor屬性?:[判斷題]
* A、正確
- B、錯(cuò)誤
42.UIButton中受到tintColor影響的范圍有title和image的顏色?:[判斷題]
* A、正確
- B、錯(cuò)誤
43.以下關(guān)于NSLineBreakMode的枚舉成員,描述正確的是:[多選題]
* A、ByWordWrapping表示以單詞為顯示單位顯示,后面部分省略不顯示
* B、ByCharWrapping表示以字符為顯示單位顯示,后面部分省略不顯示
* C、ByClipping表示剪切與文本寬度相同的內(nèi)容長(zhǎng)度,后半部分被刪除
* D、ByTruncatingHead 表示開(kāi)頭省略,顯示尾部文字內(nèi)容
44.UISwitch的大小設(shè)置是無(wú)效的:[判斷題]
* A、正確
- B、錯(cuò)誤
45.UITextField支持代理模式delegate,但是不支持Target-Action的機(jī)制?[判斷題]
- A、正確
* B、錯(cuò)誤
46.UITableView可用于以下哪些場(chǎng)合:[多選題]
* A、方便用戶瀏覽有層次結(jié)構(gòu)的數(shù)據(jù)
* B、提供一個(gè)可供選擇的列表
* C、顯示一系列數(shù)據(jù)地索引列表
* D、利用分組結(jié)構(gòu),展示細(xì)節(jié)信息和更詳細(xì)的設(shè)置
47.開(kāi)發(fā)者可以對(duì)UITableViewCell進(jìn)行哪些操作:[多選題]
* A、自定義單元格的文字標(biāo)題、圖標(biāo)、背景燈屬性。
* B、對(duì)單元格進(jìn)行選擇和高亮操作。
* C、配置單元格的附件視圖。
* D、對(duì)單元格進(jìn)行添加、刪除、改變位置等操作。
48.以下關(guān)于UICollectionView和UICollectionViewController,描述正確的是:[多選題]
* A、UICollectionView和UICollectionViewController類是iOS 6 新引進(jìn)的API。
* B、標(biāo)準(zhǔn)的UICollectionView對(duì)象包括三個(gè)部分:Cells、Supplementary Views、Decoration Views,這三部分都是UIView的子類。
* C、UICollectionView類負(fù)責(zé)管理數(shù)據(jù)地有序集合,并使用自定義布局的模型呈現(xiàn)這些數(shù)據(jù)。
* D、UICollectionView 除了多列布局之外,還可以實(shí)現(xiàn)平鋪的布局、圓形的布局和更多的自定義布局。
49.在iOS中只有繼承UIResponder類的對(duì)象才能處理觸摸事件?[判斷題]
* A、正確
- B、錯(cuò)誤
50.UIViewController視圖控制器、UIApplication都是繼承自UIResponder?[判斷題]
* A、正確
- B、錯(cuò)誤
51.如果UIWindow對(duì)象無(wú)法處理某個(gè)觸摸事件,則該觸摸事件將被丟棄[判斷題]
- A、正確
* B、錯(cuò)誤
52.UIGestureRecognizer類包含以下哪些手勢(shì):[多選題]
A、UIPanGestureRecognizer
B、UIRotationGestureRecognizer
C、UILongPressGestureRecognizer
D、UISwipeGestureRecognizer局。
53.UITapGestureRecognizer屬于非連續(xù)類型的手勢(shì)?[判斷題]
* A、正確
- B、錯(cuò)誤
54.UIPinchGestureRecognizer屬于非連續(xù)類型的手勢(shì)?[判斷題]
- A、正確
* B、錯(cuò)誤
55.Storyboard故事版功能是在哪個(gè)iOS版本發(fā)布的:[單選題]
- A、iOS4
* B、iOS5 - C、iOS6
- D、iOS7
56.以下對(duì)Storyboard故事版功能 描述正確的是[多選題]
* A、通過(guò)簡(jiǎn)單地拖拽、往視圖控制器添加各種界面控件,可以降低學(xué)習(xí)的難度。提供開(kāi)發(fā)工作的效率和趣味。使開(kāi)發(fā)工作更加人性化。
* B、可以更好地查看和理解項(xiàng)目中所有頁(yè)面的外觀,以及頁(yè)面之間的鏈接跳轉(zhuǎn)關(guān)系。
* C、Storyboard快速實(shí)現(xiàn)了視圖之間的跳轉(zhuǎn)關(guān)系。
* D、通過(guò)重寫 prepareForSegue方法,將視圖控制器的所有跳轉(zhuǎn)邏輯都匯聚一起,方便進(jìn)行統(tǒng)一的界面跳轉(zhuǎn)和參數(shù)傳遞。
57.以下對(duì)Storyboard故事版功能 描述正確的是[多選題]
* A、Storyboard通過(guò) Cell ProtoType原型,以及Static靜態(tài)Cell的特性,讓表格控制器實(shí)現(xiàn)起來(lái)更容易
* B、通過(guò)Storyboard可以通過(guò)拖拽建立約束關(guān)系,從而快速實(shí)現(xiàn)各分辨率的適配。
* C、當(dāng)Storyboard包含越來(lái)越多的視圖控制器時(shí),打得開(kāi)Storyboard將越來(lái)越慢。
* D、通過(guò)將常見(jiàn)的功能比如注冊(cè)、分享模塊獨(dú)立成一個(gè)Storyboard,可以實(shí)現(xiàn)功能的模塊化和重復(fù)利用。
58.Storyboard事實(shí)上是由XML 可擴(kuò)展標(biāo)記語(yǔ)言構(gòu)成的文本文件[判斷題]
* A、正確
- B、錯(cuò)誤
59.使用Single View Application模板創(chuàng)建的項(xiàng)目,將自帶哪兩個(gè)Storyboard文件?[多選題]
- A、Home.storyboard
* B、Main.storyboard - C、Index.storyboard
* D、LaunchScreen.storyboard
60.以下哪種標(biāo)記表示來(lái)自storyboard的連接方法?[單選題]
- A、@IBMethod
- B、@IBOutlet
* C、@IBAction - D、@IBProperty
61.在LaunchScreen.storyboard故事版中,不能使用UIWebView,因?yàn)檫@里不能使用網(wǎng)絡(luò)的。[判斷題]
* A、正確
- B、錯(cuò)誤
62.可以為IPhone和iPad指定不同的LaunchScreen.storyboard故事版[判斷題]
- A、正確
* B、錯(cuò)誤
63.LaunchScreen.storyboard故事版可以使用UIView或者UIViewController,而自定義的子類則不可以使用?[判斷題]
* A、正確
- B、錯(cuò)誤
64.CALayer 是被定義在那個(gè)框架中的?[單選題]
- A、UIKit
- B、Foundation
* C、QuartCore - D、Core Image
65.通過(guò)操作CALayer對(duì)象,可以很方便地天正UIView的哪些界面屬性?[多選題]
* A、陰影
* B、圓角
* C、邊框
* D、漸變色
66.UIColor、UIImage 是定義在哪個(gè)框架中的[單選題]
- A、Foundation
- B、CoreGraphics
* C、UIKit - D、Core Image
67.UIKit只能在iOS平臺(tái)使用,無(wú)法在macOS平臺(tái)使用?[判斷題]
* A、正確
- B、錯(cuò)誤
68.QuartCore框架可以直接使用UIColor、UIImage?[判斷題]
- A、正確
* B、錯(cuò)誤
69.CALayer和UIView一樣也可以處理用戶的觸摸事件?[判斷題]
- A、正確
* B、錯(cuò)誤
70.UIView可以通過(guò)subviews屬性訪問(wèn)所有的子視圖,類似地,CALayer也可以通過(guò)sublayers屬性訪問(wèn)所有的子層?[判斷題]
* A、正確
- B、錯(cuò)誤
71.UIView可以通過(guò)superview屬性訪問(wèn)父視圖,類似地,CALayer也可以通過(guò)superlayers屬性訪問(wèn)所有的父層?[判斷題]
* A、正確
- B、錯(cuò)誤
72.如果兩個(gè)UIView是父子關(guān)系,那么它們內(nèi)部的CALayer也是父子關(guān)系嗎?[判斷題]
* A、正確
- B、錯(cuò)誤
73.因?yàn)閁IView對(duì)象已經(jīng)是它內(nèi)部根層的delegate,所以不能在將某個(gè)UIView設(shè)置CALayer的delegate?[判斷題]
* A、正確
- B、錯(cuò)誤
74.UIKit框架位于iOS系統(tǒng)架構(gòu)的那一層?[單選題]
- A、核心操作層(Core OS layer)
- B、核心服務(wù)層 (Core services layer)
- C、媒體層(Media layer)
* D、可觸摸層(Cocoa Touch layer)
75.iOS的用戶界面有哪幾種創(chuàng)建方式?[多選題]
* A、Xib
* B、Storyboard
- C、PhotoShop
* D、代碼創(chuàng)建
76.IPhone X的分辨率比例是?[單選題]
- A、4:3
- B、16:9
* C、18:9 - D、5:3
77.以下關(guān)于IPhone X尺寸 描述正確的是?[多選題]
* A、高度增加了145pt,變成812pt
* B、狀態(tài)欄高度由20pt變成44pt
* C、物理分辨率為1125px * 2436px
* D、iPhoneX屏幕是5.8英寸
78.iOS11之前導(dǎo)航欄默認(rèn)的高度為?[單選題]
- A、32pt
- B、48pt
* C、64pt - D、96pt
79.iOS11之后如果設(shè)置自prefersLargeTttles = YES,則導(dǎo)航欄的高度為?[單選題]
- A、32pt
- B、48pt
- C、64pt
* D、96pt
80.在iOS11上,如果APP在啟動(dòng)時(shí)圖標(biāo)的四周出現(xiàn)黑色,是因?yàn)閳D標(biāo)的四角的圓角,并且周圍為透明像素。[單選題]
* A、正確
- B、錯(cuò)誤
81.以下哪個(gè)屬性是iOS11開(kāi)始引入的,用來(lái)控制safeAreaInsets是否加到layoutMargins上[單選題]
- A、layoutMargins
- B、directionalLayoutMargins
- C、preservesSuperviewLayoutMargins
* D、insetsLayoutMarginsFromSafeArea
82.以下哪個(gè)屬性是iOS8開(kāi)始引入的,用來(lái)指定視圖和它的子視圖之間的邊距[單選題]
* A、layoutMargins
- B、directionalLayoutMargins
- C、preservesSuperviewLayoutMargins
- D、insetsLayoutMarginsFromSafeArea
83.LayoutSubViews在什么時(shí)候被調(diào)用?[判斷題]
* A、當(dāng)View本身的frame改變時(shí)
- B、當(dāng)View本身的bounds改變時(shí)
- 更多技術(shù)題合集:
簡(jiǎn)歷模板+最新iOS資料領(lǐng)取:docs.qq.com/doc/DVWlQam9Qd3B1cEF2
面試題來(lái)源作者:宇夜iOS