1材部、Collectionview
2毫缆、圖片上傳排列
3、鍵盤監(jiān)聽
4乐导、cell 重用機制 (代碼順序)
5苦丁、調用父類方法 先 【super ****】
6、viewcontroller的點擊 取消鍵盤
7物臂、活用Xcode方法:例如 table鍵 打方法前先打出類型
8旺拉、代碼冗余 條件判斷里的代碼只寫會變的值就好
9、刪棵磷、改類 時 蛾狗,細心些
- alloc init 不能寫在 setmodel 中 因為init 一直在執(zhí)行 drowrect 方法
- 代碼順序 有時現(xiàn)在用到的模型,都還沒有數(shù)據(jù)
- scrollview 的size 可以不大于frame 也能彈跳 alwaysbouncevertical屬性
- for循環(huán)里面有alloc init 的話仪媒,放到釋放池里面沉桌。
- 與網(wǎng)絡請求無關的不要放在網(wǎng)絡請求里。
- 記住自己以前寫過的代碼算吩。
- 要把自己當成編譯器留凭,就是說,不用運行就知道運行起來是什么結果偎巢。
- 編譯器報錯不會那么溫柔蔼夜,直接警告或是崩
- 要注意一些對象,可能它被釋放后压昼,又有條用它求冷,這時會蹦的
- 不是需要計算、多次使用窍霞、方便閱讀的沒必要 創(chuàng)建中間值遵倦。
- 可變字典和數(shù)組 不能alloc init 要new
- 代碼的執(zhí)行順序,block異步回調官撼,有時間延遲
- 下級返回上級刷新列表有三種辦法:保存按鈕代理,強指針似谁,listChangeWithModel 傲绣、listCreatWithModel雙代理三種,但是不能用 viewwillappear 巩踏,這四個方法基本不用秃诵。極極極極及少用。 詳見宜修哥 地址模塊
- 模型中的數(shù)組塞琼,在實例化時不需要再新建一個中間數(shù)組去賦值菠净;
- 當數(shù)組中只有一個模型時,就不需要放到數(shù)據(jù)數(shù)組里了;
- 狀態(tài)條設置成不透明可解決 scrollview 和 navigationbar 的坐標沖突毅往;translucent = no牵咙;其實不用,只要self攀唯。view 加載的第一個視圖是scrollview 洁桌,就是自動auto。侯嘀。另凌。= YES,否則則跳過這個屬性戒幔;
- 做功能模塊吠谢,整體把握還是不到位,是經(jīng)驗是熟練
- 字符串不占內存诗茎;
- 對于cell的高度工坊,最好寫在model里,(tableview的代理方法執(zhí)行順序)其次寫在heightforow方法中(若是行數(shù)不多的話错沃,因為這樣代碼易懂)栅组。
- 網(wǎng)絡請求中self.方法時 都換成 ——block(當 self調用方法時,self.tableVIew 則不用)
- uiimageView 上面的視圖沒法交互 打開userInterface
- morepicture 傳參數(shù)時明明是數(shù)組枢析,為什么我們要給成字典玉掸?[php不認識數(shù)組]
- clang: error: linker command failed with exit code 1 (use -v to see invocation)
- @class #import
- 自定義的view 加手勢時,別忘了打開user interface (self.view 除外)
- 通知能少就少
- 如有if 考慮else,在邏輯方面以自己為用戶的角度來思考問題,而不是開發(fā)者;
- md5 哈希算法
- app從0到1 客戶需要提供的資料 需要申請的賬號 需要的證書 流程順序
- 別碰到電話就限制11位,也有可能是固定電話;
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string 方法和訪問器 一樣么 (前者好復雜)
- 懶加載-tableview方法-系統(tǒng)代理方法-自己的方法-自己的代理方法-網(wǎng)絡請求的方法;
- 邏輯不通的話,不妨邏輯清零,從更大的方面來考慮;
- SDWebImage 有自己的緩存機制,同一個url就算返回的圖片不一樣醒叁,但是加載的圖還是原來的司浪。 [[SDImageCache sharedImageCache] clearDisk];//清楚緩存
44.scrollView 實例化是寫坐標和 實例化后定義坐標是不一樣的; 【可斜滑動】
45.最快速的提升流暢度的方法?
用instrument找出所有不需要透明但是透明的view,layer.全部弄成不透明的.
46.判斷一個字符串是否包含另一個 NSRange range = [str rangeOfString:@"se"];
if (range.location != NSNotFound) {
NSLog(@"Found");
}
47.密碼驗證正則 6-18位 數(shù)字或者字母或者符號
NSRange range = [str rangeOfString:@"[0-9a-zA-Z]{6,18}" options:NSRegularExpressionSearch];
【比如@"[0-9a-zA-Z!@#$%]{6,18}" 】
48.空間天氣 導航左側按鈕點擊事件; 二級界面右滑手勢;
1.思路清晰要,一個第三方庫,在他的.h文件中肯定有必要的方法可供使用者調用;
2.一個類中若找不到你想要的方法或代理,看他的繼承,父類;
3.問題找不到,繞個彎彎兒;
49.180天不能注冊同名 是否訪問第三方
50.只有在get/set方法中用若引用[_model],否則強引用[self.model];
51.command + i 選擇水管標志的, 檢查內存泄漏
command shift + i 檢查死循環(huán);
52.一個view .h -(instancetype)initStickContentView:(HFStickerContentView*)contentView;
.m
-(instancetype)initStickContentView:(HFStickerContentView *)contentView {
self = [super init];
if (self) {
}
return self;
}
50.有時手機連上xcode會蹦,但不連xcode是沒問題的;