iOS面試題 一共分為
筆試題和面試題兩部分
筆試題一共分為10個 總共613題
面試題一共400題
筆試題 一個10個系列 分別為
①(語法篇) 共147題 已更新
②(常識篇) 共72題 已更新
③(界面篇) 共83題 已更新
④(iOS篇) 共52題 已更新
⑤(操作篇) 共68題 已更新
⑥(數(shù)據(jù)結(jié)構(gòu)篇) 共23題 已更新
⑦(多線程篇) 共60題 已更新
⑧(網(wǎng)絡篇) 共22題 已更新
⑨(多媒體篇) 共59題 已更新
⑩(安全篇) 共27題 已更新
面試題一共分為3個 總共400題
?(面試篇 1/3) 共127題 已更新
?(面試篇 2/3) 共137題 已更新
?(面試篇 3/3) 共136題 已更新
請?zhí)砑訄D片描述
@TOC
筆試題 613題
??③、筆試題-界面篇(83題)
1.UIViewController的didReceiveMemoryWaring方法什么時候會被調(diào)用:[單選題]
- A、外接來電
- B、系統(tǒng)錯誤
- C、系統(tǒng)內(nèi)存不足
- D、系統(tǒng)CPU被占用100%
2.下面哪個類在iPhone應用程序開發(fā)時不能使用:[單選題]
- 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.關于UIControl和UIView之間的關系,下面說法正確的是:[單選題]
- A、UIcontrol繼承于UIView
- B、UIView繼承于UIcontrol
- C、UIcontrol與UIView之間沒有繼承關系
- D、UIcontrol與UIView都是直接繼承于UIResponder
6.下列UIView的方法中,哪一個在iOS5.0前后的系統(tǒng)調(diào)用機制不同:[單選題]
- A、addSubView
- B、layoutSubView
- C、drawRect
- D、removeFromSuperView
7.構(gòu)造UIImage的方法中,占用內(nèi)存最大的哪個方法:[單選題]
- 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、錯誤
10.UIControl是UIView的父類?:[單選題]
- A、正確
- B、錯誤
11.UITableView中cell的復用是由幾個數(shù)組實現(xiàn)的:[單選題]
- A、1
- B、2
- C、3
- D、4
12.點擊Button 響應鏈中最終得到響應的是:[單選題]
- A、window
- B、Application
- C、AppDelegate
- D、UIViewController
13.在UIKit中,frame和bounds的區(qū)別是:[單選題]
- A、frame是bounds的別名
- B、frame是bounds的繼承類
- C、frame的參考系是父視圖坐標系,bounds的參考系是自身的坐標
- D、frame的參考系是自身坐標,bounds的參考系是父視圖的坐標
14.UIViewController在顯示過程中,各個方法的調(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對象時,與普通的init方法有什么區(qū)別:[單選題]
- A、沒有區(qū)別.只是為了方便
- B、imageNamed方法只是創(chuàng)建了一個指針,沒有分配其他內(nèi)存
- C、imageNamed方法將圖片加載到內(nèi)存中后不再釋放
- 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.以下關于UIView和CALayer描述正確的是:[多選題]
- A、UIView之所以能夠顯示,是因為其內(nèi)部的CALayer層對象。
- B、UIView真正的繪圖部分,由一個CALayer類來管理。
- C、無需通過CALayer,即可給UIView添加陰影,圓角大小、邊框?qū)挾群皖伾取?/li>
- D、訪問UIView根繪圖和坐標有關的屬性,例如 frame、bounds等,實際上內(nèi)部都是在訪問它所包含的CALayer的相關屬性。
20.UIWindow提供一個畫內(nèi)容的表面,是所有其他視圖的根容器,每個應用程序只能擁有一個窗口?:[判斷題]
- A、正確
- B、錯誤
21.UIView視圖是所有控件的父類。控件用于響應用戶的交互,而UIView則負責內(nèi)容的顯示和布局?:[判斷題]
- A、正確
- B、錯誤
22.UIControl類幾乎是所有交互控件的父類,如按鈕、滑塊、文本框等。所以UIControl類負責根據(jù)觸摸事件觸發(fā)相應的動作?:[判斷題]
- A、正確
- B、錯誤
23.iOS應用程序啟動后,創(chuàng)建的第一個視圖控件就是UIWindow?:[判斷題]
- A、正確
- B、錯誤
24.在iOS應用程序中,窗口對象并沒有像關閉框或標題框這樣的區(qū)域,所以用戶不能直接對其進行關閉?:[判斷題]
- A、正確
- B、錯誤
25.在macOS中,NSWindow的父類是NSResponder。在iOS系統(tǒng)中,UIWindow的父類是UIResponder?:[判斷題]
- A、正確
- B、錯誤
26.在macOS中,NSWindow的父類是NSResponder。在iOS系統(tǒng)中,UIWindow的父類是UIView?:[判斷題]
- A、正確
- B、錯誤
27.UIView的alpha屬性是一個浮點值,取值范圍在0~1.0,表示從完全透明到完全不透明:[判斷題]
- A、正確
- B、錯誤
28.當將UIView的alpha屬性設置為0之后,以下描述正確的是:[多選題]
- A、當前的UIView及其子視圖都會被隱藏,而不管子視圖的alpha值是多少。
- B、當前的UIView會被隱藏,而子視圖不會受到父視圖alpha值的影響。
- C、當前的UIView不會從響應者鏈中移除。仍然可以接受觸摸事件。
- D、當前的UIView會從響應者鏈中移除。而響應者鏈中的下一個會成為響應者。
29.當將UIView的isHidden屬性設置為true之后,以下描述正確的是:[多選題]
- A、當前的UIView及其子視圖都會被隱藏,而不管子視圖的hidden值是多少。
- B、當前的UIView會被隱藏,而子視圖不會受到父視圖isHidden值的影響。
- C、當前的UIView會從響應者鏈中移除。而響應者鏈中的下一個會成為響應者。
- D、當前的UIView不會從響應者鏈中移除。仍然可以接受觸摸事件。
30.在默認情況下,當向一個視圖中添加一個子視圖,如果子視圖的區(qū)域超出了父視圖的范圍,子視圖超出的部分仍然會在屏幕上正常顯示?:[判斷題]
- A、正確
- B、錯誤
31.在iOS坐標系統(tǒng)中,坐標的原點位于:[單選題]
- A、左下角
- B、右上角
- C、左上角
- D、右下角
32.關于UIView的frame和bounds屬性,以下描述正確的是:[多選題]
- 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視圖進行放大、縮小或旋轉(zhuǎn)時。center屬性的值會發(fā)生改變?:[判斷題]
- A、正確
- B、錯誤
34.通過CGAffineTransform仿射轉(zhuǎn)換,可以對UIView視圖進行哪些變換的操作:[多選題]
- A、縮放
- B、旋轉(zhuǎn)
- C、隱藏
- D、位移
35.UIViewController包含以下哪些功能?[多選題]
- A、UIViewController類負責創(chuàng)建其管理的視圖,并在內(nèi)存較低時將它們從內(nèi)容中移出。
- B、可以通過視圖控制器來將新的視圖內(nèi)容,以模態(tài)窗口的方式顯示在當前視圖的上方。
- C、視圖控制器可以響應設備的方向變化,對視圖進行相應的調(diào)整。以適應新的方向。
- D、一些特殊的視圖控制器,如導航視圖控制器、標簽視圖控制器、可使視圖的管理更加方便和規(guī)范。
36.關于UITabBarController,以下描述正確的是:[多選題]
- A、UITabBarController不能添加到別的視圖控制器中。
- B、UITabBarController可以添加到別的視圖控制器中。
- C、UITabBarController的Tab bar可以放置在屏幕的底部或者頂部。
- D、UITabBarController的Tab bar只能放置在屏幕的底部。
37.關于UINavigationController,以下描述正確的是:[多選題]
- A、UINavigationController導航控制器用于顯示多屏并具有一定層次結(jié)構(gòu)的內(nèi)容,是構(gòu)建分成應用程序的主要工具。
- B、UINavigationController維護了一個視圖控制器棧,所有的子視圖控制器都在于堆棧中。
- C、和UITabBarController相比,UINavigationController是作為棧來實現(xiàn)的。它更適合用于處理和顯示分層的數(shù)據(jù)。
- D、UINavigationController導航控制器在管理、切入和切出多個內(nèi)容頁面,與UITabBarController類似。
38.UIControl類的UIControlEvent主要包含哪三種事件?:[多選題]
- A、基于通知的控件事件
- B、基于值得控件事件
- C、基于觸摸的控件事件
- D、基于編輯的控件事件
39.UIButton是UIView的一個子類?:[判斷題]
- A、正確
- B、錯誤
40.Target-Action機制可以對同一個控件綁定多個Action:[判斷題]
- A、正確
- B、錯誤
41.如果你的視圖并沒有指定tintColor屬性,那么這個使用將使用父類中的tintColor屬性?:[判斷題]
- A、正確
- B、錯誤
42.UIButton中受到tintColor影響的范圍有title和image的顏色?:[判斷題]
- A、正確
- B、錯誤
43.以下關于NSLineBreakMode的枚舉成員,描述正確的是:[多選題]
- A、ByWordWrapping表示以單詞為顯示單位顯示,后面部分省略不顯示
- B、ByCharWrapping表示以字符為顯示單位顯示,后面部分省略不顯示
- C、ByClipping表示剪切與文本寬度相同的內(nèi)容長度,后半部分被刪除
- D、ByTruncatingHead 表示開頭省略,顯示尾部文字內(nèi)容
44.UISwitch的大小設置是無效的:[判斷題]
- A、正確
- B、錯誤
45.UITextField支持代理模式delegate,但是不支持Target-Action的機制?[判斷題]
- A、正確
- B、錯誤
46.UITableView可用于以下哪些場合:[多選題]
- A、方便用戶瀏覽有層次結(jié)構(gòu)的數(shù)據(jù)
- B、提供一個可供選擇的列表
- C、顯示一系列數(shù)據(jù)地索引列表
- D、利用分組結(jié)構(gòu),展示細節(jié)信息和更詳細的設置
47.開發(fā)者可以對UITableViewCell進行哪些操作:[多選題]
- A、自定義單元格的文字標題、圖標、背景燈屬性。
- B、對單元格進行選擇和高亮操作。
- C、配置單元格的附件視圖。
- D、對單元格進行添加、刪除、改變位置等操作。
48.以下關于UICollectionView和UICollectionViewController,描述正確的是:[多選題]
- A、UICollectionView和UICollectionViewController類是iOS 6 新引進的API。
- B、標準的UICollectionView對象包括三個部分:Cells、Supplementary Views、Decoration Views,這三部分都是UIView的子類。
- C、UICollectionView類負責管理數(shù)據(jù)地有序集合,并使用自定義布局的模型呈現(xiàn)這些數(shù)據(jù)。
- D、UICollectionView 除了多列布局之外,還可以實現(xiàn)平鋪的布局、圓形的布局和更多的自定義布局。
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屬于非連續(xù)類型的手勢?[判斷題]
- A、正確
- B、錯誤
54.UIPinchGestureRecognizer屬于非連續(xù)類型的手勢?[判斷題]
- A、正確
- B、錯誤
55.Storyboard故事版功能是在哪個iOS版本發(fā)布的:[單選題]
- A、iOS4
- B、iOS5
- C、iOS6
- D、iOS7
56.以下對Storyboard故事版功能 描述正確的是[多選題]
- A、通過簡單地拖拽、往視圖控制器添加各種界面控件,可以降低學習的難度。提供開發(fā)工作的效率和趣味。使開發(fā)工作更加人性化。
- B、可以更好地查看和理解項目中所有頁面的外觀,以及頁面之間的鏈接跳轉(zhuǎn)關系。
- C、Storyboard快速實現(xiàn)了視圖之間的跳轉(zhuǎn)關系。
- D、通過重寫 prepareForSegue方法,將視圖控制器的所有跳轉(zhuǎn)邏輯都匯聚一起,方便進行統(tǒng)一的界面跳轉(zhuǎn)和參數(shù)傳遞。
57.以下對Storyboard故事版功能 描述正確的是[多選題]
- A、Storyboard通過 Cell ProtoType原型,以及Static靜態(tài)Cell的特性,讓表格控制器實現(xiàn)起來更容易
- B、通過Storyboard可以通過拖拽建立約束關系,從而快速實現(xiàn)各分辨率的適配。
- C、當Storyboard包含越來越多的視圖控制器時,打得開Storyboard將越來越慢。
- D、通過將常見的功能比如注冊、分享模塊獨立成一個Storyboard,可以實現(xiàn)功能的模塊化和重復利用。
58.Storyboard事實上是由XML 可擴展標記語言構(gòu)成的文本文件[判斷題]
- A、正確
- B、錯誤
59.使用Single View Application模板創(chuàng)建的項目,將自帶哪兩個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,因為這里不能使用網(wǎng)絡的。[判斷題]
- A、正確
- B、錯誤
62.可以為IPhone和iPad指定不同的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.UIColor、UIImage 是定義在哪個框架中的[單選題]
- A、Foundation
- B、CoreGraphics
- C、UIKit
- D、Core Image
67.UIKit只能在iOS平臺使用,無法在macOS平臺使用?[判斷題]
- A、正確
- B、錯誤
68.QuartCore框架可以直接使用UIColor、UIImage?[判斷題]
- A、正確
- B、錯誤
69.CALayer和UIView一樣也可以處理用戶的觸摸事件?[判斷題]
- A、正確
- B、錯誤
70.UIView可以通過subviews屬性訪問所有的子視圖,類似地,CALayer也可以通過sublayers屬性訪問所有的子層?[判斷題]
- A、正確
- B、錯誤
71.UIView可以通過superview屬性訪問父視圖,類似地,CALayer也可以通過superlayers屬性訪問所有的父層?[判斷題]
- A、正確
- B、錯誤
72.如果兩個UIView是父子關系,那么它們內(nèi)部的CALayer也是父子關系嗎?[判斷題]
- A、正確
- B、錯誤
73.因為UIView對象已經(jīng)是它內(nèi)部根層的delegate,所以不能在將某個UIView設置CALayer的delegate?[判斷題]
- A、正確
- B、錯誤
74.UIKit框架位于iOS系統(tǒng)架構(gòu)的那一層?[單選題]
- A、核心操作層(Core OS layer)
- B、核心服務層 (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.以下關于IPhone X尺寸 描述正確的是?[多選題]
- A、高度增加了145pt,變成812pt
- B、狀態(tài)欄高度由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在啟動時圖標的四周出現(xiàn)黑色,是因為圖標的四角的圓角,并且周圍為透明像素。[單選題]
- 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在什么時候被調(diào)用?[判斷題]
- A、當View本身的frame改變時
- B、當View本身的bounds改變時