0 問題:

1解釋self = [super init]方法

其實就是容錯處理奖磁,當父類初始化失敗渐裂,會返回一個nil,表示初始化失敗霉翔。由于繼承的關系,子類是需要擁有父類的實例和行為苞笨,必須先初始化父類债朵,再初始化子類

2線上App崩潰

方法一,在源生代碼中修改瀑凝,提交

方法二序芦,利用第三方平臺,JSPatch ?使用JS調(diào)用oc源生接口粤咪,替換任意OC方法谚中,我的認識就是可以不通過重新上架app項目到appStore就可以修改oc代碼

3App中混合H5開發(fā),優(yōu)缺點:

方法一:使用UIWebView或者WKWebView(ios8以后)

通過UIWebView代理方法攔截寥枝,判斷scheme是否是約定好的宪塔,調(diào)用本地API是哪

shouldStartLoadWithRequest

方法二:ios7以后,直接通過JavaScriptCore庫囊拜,通過往JS DOM注入對象(某個類的實例)

優(yōu)缺點:加入h5某筐,比原生要慢很多,體驗不好冠跷;可以實現(xiàn)嵌入別的功能入口南誊,可以隨時更改,不用更新版本就可以上線

4static

函數(shù)體內(nèi)蜜托,作用范圍是該函數(shù)體抄囚,該變量的內(nèi)存只被分配一次,下次調(diào)用時仍然維持上次的值橄务;模塊內(nèi)是全局變量幔托,可以被模塊內(nèi)的所有函數(shù)訪問,外部不行

5地圖和定位:

定位仪糖,創(chuàng)建位置管理器請求用戶授權柑司;請求目的地和當前位置的針線;創(chuàng)建渲染物對象在mapView代理方法中根據(jù)折現(xiàn)創(chuàng)建渲染物锅劝,并設置顏色

6常見的Http狀態(tài)碼:302請求重定向攒驰;304網(wǎng)頁自請求者上次請求后沒有更新,可以節(jié)省帶寬

500以上是服務器錯 故爵;400以上是請求鏈接錯誤或者找不到服務器玻粪;200以上是用戶成功獲取到了請求的文件隅津,正確;100以上是請求接受成功‘

7isa指針指向什么

每一個對象內(nèi)部都有isa指針劲室,這個指針指向它真正的真是類型伦仍,根據(jù)這個指針就能知道將來調(diào)用哪個類的方法

8觸摸事件的傳遞:

觸摸事件的傳遞是從父控件傳遞到子控件,如果父控件不能接收觸摸事件很洋,那么子控件就不可能接收到觸摸事件充蓝,不能接收觸摸事件的四種情況:不接收用戶交互userInteractionEnabled = NO;隱藏hidden = YES;透明alpha <= 0.01;未啟用enabled = NO;

9事件響應者鏈

如果當前view是控制器的view,那么就傳遞給控制器喉磁,如果控制其不在谓苟,則將其傳遞給它的父控件,在視圖層次結(jié)構(gòu)最頂層視圖也不能處理接收到的事件或消息协怒,將事件或消息傳遞給UIWindow對象進行處理涝焙;如果UIWindow對象也不能處理,將事件或消息傳遞給UIApplication對象孕暇,如果UIApplication也不能處理對象或消息仑撞,則將丟棄掉

10UITableView的復用機制

每次創(chuàng)建cell的時候,通過dequeueReusableCellWithIdentifier:方法創(chuàng)建cell妖滔,先到緩存池中找指定標識的cell隧哮,如果沒有直接返回nil,如果沒有找到標識的cell座舍,會通過initWithStyle:reuseIdenitifier:創(chuàng)建一個cell近迁,當cell離開界面的時候,會被放到緩存池中簸州,供下次使用

11沙盒目錄

Application:存放程序源文件鉴竭,上架前經(jīng)過數(shù)字簽名,上架后不可以更改

Documents:常用目錄岸浑,iClound備份目錄搏存,存數(shù)據(jù)

Library:

Caches:存放體積大又不需要備份的數(shù)據(jù)

Preference:設置目錄,iCloud會備份設置信息

tmp:存放臨時文件矢洲,不會被備份璧眠,這個文件下的數(shù)據(jù)有隨時被清除的可能

12pushViewController和presentViewController有什么區(qū)別

兩個都是在多個視圖控制器里跳轉(zhuǎn)的函數(shù)

presentViewController提供是一個模態(tài)視圖控制器(modal)

pushViewController提供一個棧控制器數(shù)組读虏,push/pop

13UIView和CALayer是什么關系

UIView顯示在屏幕上歸功于CALayer责静,通過調(diào)用drawRect方法渲染自身的內(nèi)容,調(diào)節(jié)CALayer屬性可以調(diào)整UIView的外觀盖桥,UIView繼承UIResponder灾螃,比起CALayer可以影響用戶事件,ios6之后揩徊,可以方便的通過視圖調(diào)試功能查看圖層之間的關系

UIView是ios系統(tǒng)界面中元素的基礎腰鬼,所有的界面元素都繼承它嵌赠,內(nèi)部是由Core Animation 來實現(xiàn),它的真正的繪圖部分熄赡,是由一個叫做CALayer(core Animation Layer)的類管理姜挺。UIView本身,訪問有關繪圖和坐標有關的屬性彼硫,frame/bounds炊豪,實際上內(nèi)部都是訪問CALayer的相關屬性

14

淺拷貝和深拷貝的區(qū)別:

淺Copy:可以理解為指針的復制,只是多了一個指向這塊內(nèi)存的指針拧篮,共用一塊內(nèi)存溜在。

深Copy:理解為內(nèi)存的復制,兩塊內(nèi)存是完全不同的他托,也就是兩個對象指針分別指向不同的內(nèi)存,互不干涉仆葡。

15drawRect方法:

只有在此方法中赏参,系統(tǒng)才能獲取到上下文環(huán)境 ?; rect參數(shù)是繪圖上下文的大醒刂选把篓;drawRect方法在view顯示的時候調(diào)用一次

重繪:【self setNeedsDisplay]; ? 系統(tǒng)會幫助調(diào)用drawRect方法,清除掉原來的腰涧,再繪制新的

[self setNeedsDisplayInRect:CGRect]; 固定區(qū)域的重繪

不能手動調(diào)用韧掩,否則獲取不到

16app崩潰 收集問題

使用騰訊的bugly ?輸入程序id 關聯(lián)進去,然后程序員查看崩潰日志

17動畫:分為顯示動畫和隱式動畫

在UIView上的事顯示動畫窖铡,不用我們手動去開啟疗锐,只要直接調(diào)用animation的接口就可以了。

在CALayer上的動畫叫隱式動畫费彼,需要我們?nèi)ナ謩娱_啟滑臊,隱式動畫分為三種,屬性動畫箍铲,組動畫和轉(zhuǎn)場動畫雇卷,屬性動畫又分為基礎動畫和幀動畫,幀動畫需要指定路徑

隱式動畫有隱式代理:動畫的開始和動畫的結(jié)束

18字符串使用copy

如果不使用copy颠猴,

@property(nonatomic,strong)NSString *str;

NSMutableString *string = [NSMutableString string];

[string appendString:@"hello"];

self.str = string;

NSLog(@"%@",self.str);

[string appendString:@"world"];

NSLog(@"%@",self.str);

}

NSString中copy的問題[3807:239891] hello

NSString中copy的問題[3807:239891] helloWorld

我們只給self.str附了一次值,但是self.str 的值改變了,這是因為把可變字符的地址指向了str,所以string的值改變了,self.str也跟著改變,

改為copy后关划,保證了在代碼中數(shù)據(jù)的安全。 ?不可變不會有這種問題

19因為+load是在類被初始化時候就被調(diào)用的翘瓮。+initialize是在收到消息之后才調(diào)用贮折,如果應用不發(fā)送消息給它,它就永遠不可能執(zhí)行

20這個寫法會出什么問題:@property (copy) NSMutableArray *array;

NSMutableArray用copy修飾有時就會crash,因為對這個數(shù)組進行了增刪改操作,而copy后的數(shù)組變成了不可變的NSArray,沒有響應的增刪改方法,所以對其進行增刪改操作就會報錯

21 簡述你對UIView资盅、UIWindow和CALayer的理解

UIWindow對象是所有UIView的根脱货,管理和協(xié)調(diào)的應用程序的顯示岛都。UIWindow類是UIView的子類,可以看作是特殊的UIView振峻。一般應用程序只有一個UIWindow對象臼疫,即使多個UIWindow對象,也只有一個UIWindow可以接受到用戶的觸屏事件扣孟。

UIView是用來顯示內(nèi)容的烫堤,可以處理用戶事件。

CALayer是用來繪制內(nèi)容的凤价,對內(nèi)容進行動畫處理依賴與UIView來進行顯示鸽斟,不能處理用戶事件。

UIView和CALayer是相互依賴的關系利诺。UIView依賴與calayer提供的內(nèi)容富蓄,CALayer依賴uivew提供的容器來顯示繪制的內(nèi)容。歸根到底CALayer是這一切的基礎慢逾,如果沒有CALayer立倍,UIView自身也不會存在,UIView是一個特殊的CALayer實現(xiàn)侣滩,添加了響應事件的能力口注。UIView來自CALayer,高于CALayer君珠,是CALayer高層實現(xiàn)與封裝寝志。UIView的所有特性來源于CALayer支持。

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末策添,一起剝皮案震驚了整個濱河市材部,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌唯竹,老刑警劉巖败富,帶你破解...
    沈念sama閱讀 218,941評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異摩窃,居然都是意外死亡兽叮,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,397評論 3 395
  • 文/潘曉璐 我一進店門猾愿,熙熙樓的掌柜王于貴愁眉苦臉地迎上來鹦聪,“玉大人,你說我怎么就攤上這事蒂秘≡蟊荆” “怎么了?”我有些...
    開封第一講書人閱讀 165,345評論 0 356
  • 文/不壞的土叔 我叫張陵姻僧,是天一觀的道長规丽。 經(jīng)常有香客問我蒲牧,道長,這世上最難降的妖魔是什么赌莺? 我笑而不...
    開封第一講書人閱讀 58,851評論 1 295
  • 正文 為了忘掉前任冰抢,我火速辦了婚禮,結(jié)果婚禮上艘狭,老公的妹妹穿的比我還像新娘挎扰。我一直安慰自己,他們只是感情好巢音,可當我...
    茶點故事閱讀 67,868評論 6 392
  • 文/花漫 我一把揭開白布遵倦。 她就那樣靜靜地躺著,像睡著了一般官撼。 火紅的嫁衣襯著肌膚如雪梧躺。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,688評論 1 305
  • 那天傲绣,我揣著相機與錄音掠哥,去河邊找鬼。 笑死斜筐,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的蛀缝。 我是一名探鬼主播顷链,決...
    沈念sama閱讀 40,414評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼屈梁!你這毒婦竟也來了嗤练?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,319評論 0 276
  • 序言:老撾萬榮一對情侶失蹤在讶,失蹤者是張志新(化名)和其女友劉穎煞抬,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體构哺,經(jīng)...
    沈念sama閱讀 45,775評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡革答,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,945評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了曙强。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片残拐。...
    茶點故事閱讀 40,096評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖碟嘴,靈堂內(nèi)的尸體忽然破棺而出溪食,到底是詐尸還是另有隱情,我是刑警寧澤娜扇,帶...
    沈念sama閱讀 35,789評論 5 346
  • 正文 年R本政府宣布错沃,位于F島的核電站栅组,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏枢析。R本人自食惡果不足惜玉掸,卻給世界環(huán)境...
    茶點故事閱讀 41,437評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望登疗。 院中可真熱鬧排截,春花似錦、人聲如沸辐益。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,993評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽智政。三九已至认罩,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間续捂,已是汗流浹背垦垂。 一陣腳步聲響...
    開封第一講書人閱讀 33,107評論 1 271
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留牙瓢,地道東北人劫拗。 一個月前我還...
    沈念sama閱讀 48,308評論 3 372
  • 正文 我出身青樓,卻偏偏與公主長得像矾克,于是被迫代替她去往敵國和親页慷。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,037評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 1胁附、截取字符串”20 | http://www.baidu.com”中酒繁,”|”字符前面和后面的數(shù)據(jù),分別輸出它們 ...
    強子ly閱讀 2,954評論 8 46
  • 1.OC里用到集合類是什么控妻? 基本類型為:NSArray州袒,NSSet以及NSDictionary 可變類型為:NS...
    輕皺眉頭淺憂思閱讀 1,378評論 0 3
  • 1.自定義控件 a.繼承某個控件 b.重寫initWithFrame方法可以設置一些它的屬性 c.在layouts...
    圍繞的城閱讀 3,391評論 2 4
  • 7、不使用IB是弓候,下面這樣做有什么問題郎哭? 6、請說說Layer和View的關系菇存,以及你是如何使用它們的彰居。 1.首先...
    AlanGe閱讀 674評論 0 1
  • 德國著名足球網(wǎng)站轉(zhuǎn)會市場更新了最新一期的中超球隊概況,一起來看看各球隊的情況如何吧撰筷。 先看看球隊總身價吧陈惰。廣州恒大...
    奮斗星人_小帆閱讀 607評論 0 0