iOS 開發小記 (七)

來源:互聯網
上載者:User

標籤:

最近要換地方工作了,整理下之前遇到的問題。

1、StatusBar View controller-based status bar appearance狀態列屬性設定後,plist修改後才有效。  2、Auto LayoutHugging priority 確定view有多大的優先順序阻止自己變大。Compression Resistance priority確定有多大的優先順序阻止自己變小。簡單來說,Hugging的收縮的意思,就是當有A,B兩個元素連在一起,當他們的superView變大的時候(A 和 B也要變大),哪個有更大的優先順序保持原來的大小;Compression Resistance 是壓縮阻力的意思,就是A、B兩個元素連在一起,當他們的superView變小的時候(A和B也要變小),哪個有更大的優先順序保持原來大小;  3、modal半透明頁面彈出一個半透明的viewController:在ib設定被彈出的展示方式:OverCurrentContext然後再調用 presentViewController即可。  4、Xcode7 卡頓問題 Source Control 裡面的 Automatically 全部關掉 ; 設定 >> 通用 >> 最近使用項目 (改成0) / 允許在這台 Mac 和 iCloud 裝置之間使用 Handoff (關掉);   5、viewController生命週期disappear 裡面做一些取消監聽的操作時,要考慮到Modal一個viewController的時候,會調用disappear;同時在navigationController poptoroot的時候,中間的一些VC不會調用disappear。 6、ReactiveCocoaRAC是基於KVO的,而NSMutableArray並不會在調用addObject或removeObject時發送通知;解決方案可以通過NSArray來解決;與此類似,Textfield的text如果是代碼設定值,不會觸發訊號。view.frame 不參與KVO,bounds可以。  7、Cell 自適應當實用UITableViewCell 的自動延伸時候,cell會自動添加一個height的約束。(可以把某個view 的height改成pro = 750,不會有warning)一個類似朋友圈添加圖片的功能(UICollectionView實現,通過修改constraint高度,讓view自適應)。當添加一個圖片的時候,如果是放在UIViewController裡面,修改constraint 的值,會導致view重新layout。如果是放在UItableviewCell 裡面的,修改constrant的值,會導致cell的重新layout,但是不會導致tableview layout。需要在cell調用一次layoutIfneed。    8、架構MVC 和 MVVM 的關於網路層的區別:MVC裡面的Model可以做成單例,Message 可以獨立出去,通過單例回調Model。model通過notify通知controller。MVVM裡面的model,不是單例,同時與controller的狀態綁定,message整合在ViewModel裡面。 9、AFNetworking constructingBodyWithBlock AFNetworking upload的時候才用這個參數如果是普通的post,不能帶有這個參數。(對於不同的任務,AFNetworking會產生不同的task)  10、ReactiveCocoa 與 UI顯示RACOberserver 用於變動的內容;如果是使用者操作,發送協議,協議回來更新的,可以用subscribenext,在next中重新整理顯示;flattenMap 不透傳completed,裡面的訊號完成了只是外面的訊號的開始,外面的訊號完成了才有completedtext_signal 一般用next 不用completed  11、UISearchControllerif the  UISearchController is deallocated before its view is loaded, this warning will appear.在用搜尋的時候產生warning,那麼下面的函數可以解決。- (void)dealloc {
    [self.mySearchController.view removeFromSuperview];}  12、視圖切換視圖A modal 視圖M 之後,如果要在modal  dismiss跳轉,記得延遲到下一個runloop(或者直接延遲0.1s) 13、objective-c A繼承B,A重寫了B的方法test,那麼當A 調用 test是A之後的方法。在super 中,self還是A,調用的還是A的test。

iOS 開發小記 (七)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.