iOS 收獲得點點滴滴

2017.09.27

  1. 設(shè)置button中圖片的位置用
    _leftbtn.titleEdgeInsets = UIEdgeInsetsMake(0, 20, 0, 0);
    這是設(shè)置了title相對于左邊平移了20
    2017.9.29
  2. 有時候需要獲取cell的button的點擊事件 然后調(diào)到另一個頁面
    方案一: 寫block函數(shù) 然后再在父viewcontroller里調(diào)用block 如果cell多的話 代碼就會很多 pass掉
    方案二:在cell中獲取父視圖的viewcontroller 然后獲取navigationcontroller 進行跳轉(zhuǎn) 這樣cell復(fù)用 中寫跳轉(zhuǎn) 省下很多代碼
    我們創(chuàng)建一個 category 擴展里寫自己然后直接調(diào)用方法 話不多少 上碼
    在category 的.h里
    //獲取當前view的controller
    -(UIViewController *)getcurrentviewController;

在category 的.m里
-(UIViewController*)getcurrentviewController{

UIResponder *responder  = self;

while ((responder = [responder nextResponder])) {
    if ([responder isKindOfClass:[UIViewController class]]) {
        return (UIViewController*)responder;
    }
   
}
 return nil;

}
在cell中
GoodsDetail_ViewController *VC = [GoodsDetail_ViewController new];
[[self getcurrentviewController].navigationController pushViewController:VC animated:YES];

  1. 已經(jīng)在界面上都配置好了弦悉,代碼里面就不需要這些設(shè)置了
    只需處理點擊事件摊唇,比如選中第一個愕乎,第一個button.selected = YES会钝,其他兩個button.selected = NO
  2. 取出button UIButton * button = [self.view viewWithTag:tag]

5.便利字典類型 用 enumerateKeysAndObjectsUsingBlock
NSArray *array = [[NSArray alloc]initWithObjects:@"a",@"b",@"c",@"d",@"e",@"f", nil];

//遍歷數(shù)組元素
[array enumerateObjectsUsingBlock:^(id  _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
    NSLog(@"obj=%@   idx=%ld",obj,idx);
}];

//如果指定了NSEnumerationConcurrent順序跷车,那么底層通過GCD來處理并發(fā)執(zhí)行事宜,具體實現(xiàn)可能會用到dispatch group唁毒。也就是說蘑辑,這個會用多線程來并發(fā)實現(xiàn),并不保證按照順序執(zhí)行

//NSEnumerationReverse 倒序排列
[array enumerateObjectsWithOptions:NSEnumerationReverse usingBlock:^(id obj, NSUInteger idx, BOOL * _Nonnull stop) {
    NSLog(@"idx=%ld, id=%@", idx, obj);

    //當需要結(jié)束循環(huán)的時候,調(diào)用stop,賦予YES
    if (idx ==3) {
        *stop = YES;
    }

}];
//NSIndexSet類代表一個不可變的獨特的無符號整數(shù)的集合,稱為索引,因為使用它們的方式浇冰。這個集合被稱為索引集    唯一的贬媒,有序的,無符號整數(shù)的集合
[NSIndexSet indexSetWithIndex:1];//創(chuàng)建一個索引集合肘习,根據(jù)索引值
[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(0,8)];//創(chuàng)建一個索引集合际乘,根據(jù)一個NSRange對象

[array enumerateObjectsAtIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(0,3)] options:NSEnumerationReverse usingBlock:^(id  _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
    NSLog(@"\n\n\nidx=%ld, id=%@", idx, obj);
}];
  1. self.XXX與_XXX的區(qū)別是 self. 調(diào)用了setter和getter方法 _XXX 是直接賦值 就是 第一種是調(diào)用了創(chuàng)建了賦值的方法
  2. iOS中UI懶加載 如果用的時候創(chuàng)建 沒有就return
  3. || 是邏輯與 && 是邏輯或
    9.設(shè)置狀態(tài)欄的顏色為白色
    -(UIStatusBarStyle)preferredStatusBarStyle{
    return UIStatusBarStyleLightContent;
    }
  4. 設(shè)置navigationbar的顏色為黑色
    self.navigationController.navigationBar.barTintColor = UIColorBlack;

11.類方法和實例方法 工廠方法
類方法不能調(diào)用屬性 需要用創(chuàng)建實例 調(diào)用
類方法里可以創(chuàng)建實例 調(diào)用實例

  1. 圖片不變形
    _bottonView.contentMode = UIViewContentModeScaleAspectFit;

  2. 登錄頁和 主頁面 的切換
    原理是更換 window 的rootVC
    在APPDelegate 中判斷是否登錄 登錄 調(diào)到主頁面 沒有彈出登錄頁面

  3. 創(chuàng)建tableview 用plant headerview 不懸浮

  • (void)scrollViewDidScroll:(UIScrollView *)scrollView {
    CGFloat sectionHeaderHeight = 50;
    if(scrollView.contentOffset.y<=sectionHeaderHeight&&scrollView.contentOffset.y>=0) {
    scrollView.contentInset = UIEdgeInsetsMake(-scrollView.contentOffset.y, 0, 0,0);
    } else if (scrollView.contentOffset.y>=sectionHeaderHeight) {
    scrollView.contentInset = UIEdgeInsetsMake(-sectionHeaderHeight, 0, 0, 0);
    }
    }
  1. https://github.com/dzenbot/DZNEmptyDataSet 空view 站位圖
    16 . https://github.com/LoveZYForever/HXWeiboPhotoPicker 多圖選擇第三方

  2. 關(guān)于 UI懶加載 原理是 當view 需要加載的時候再加載 否則 不加載 不用 一下子init出來 設(shè)置好view 在添加到view上

  3. 解決cell 的編輯狀態(tài)的時候cell 重用導(dǎo)致的 原理是讓cell 進去復(fù)用池中取數(shù)據(jù) 給cell加不同的復(fù)用標識 這樣在取出來的話 還是原來的數(shù)據(jù)

  4. rac 通知傳值

  5. mutablearry去除重復(fù)數(shù)據(jù)

  6. 頁面的數(shù)據(jù) 用一個model 來保存 然后賦值

  7. https://github.com/ko1o/PYSearch 搜索框

  8. pop到指定的頁面 原理是 循環(huán)navigationcontroller 找到 對應(yīng)的controller pop到指定controller

for (UIViewController *controller in self.navigationController.viewControllers) {
if ([controller isKindOfClass:[GoodsaddAddressController class]]) {
GoodsaddAddressController *VC = (GoodsaddAddressController *)controller;
[self.navigationController popToViewController:VC animated:YES];
}
}

  1. iOS取消tableview的footview 和headerview 的粘性 tableview設(shè)置style 為group 然后設(shè)置高度為0.001 這個是最簡單的 親測 可用
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市漂佩,隨后出現(xiàn)的幾起案子脖含,更是在濱河造成了極大的恐慌罪塔,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,997評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件养葵,死亡現(xiàn)場離奇詭異征堪,居然都是意外死亡,警方通過查閱死者的電腦和手機关拒,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,603評論 3 392
  • 文/潘曉璐 我一進店門佃蚜,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人夏醉,你說我怎么就攤上這事爽锥。” “怎么了畔柔?”我有些...
    開封第一講書人閱讀 163,359評論 0 353
  • 文/不壞的土叔 我叫張陵氯夷,是天一觀的道長。 經(jīng)常有香客問我靶擦,道長腮考,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,309評論 1 292
  • 正文 為了忘掉前任玄捕,我火速辦了婚禮踩蔚,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘枚粘。我一直安慰自己馅闽,他們只是感情好,可當我...
    茶點故事閱讀 67,346評論 6 390
  • 文/花漫 我一把揭開白布馍迄。 她就那樣靜靜地躺著福也,像睡著了一般。 火紅的嫁衣襯著肌膚如雪攀圈。 梳的紋絲不亂的頭發(fā)上暴凑,一...
    開封第一講書人閱讀 51,258評論 1 300
  • 那天,我揣著相機與錄音赘来,去河邊找鬼现喳。 笑死,一個胖子當著我的面吹牛犬辰,可吹牛的內(nèi)容都是我干的嗦篱。 我是一名探鬼主播,決...
    沈念sama閱讀 40,122評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼幌缝,長吁一口氣:“原來是場噩夢啊……” “哼默色!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,970評論 0 275
  • 序言:老撾萬榮一對情侶失蹤腿宰,失蹤者是張志新(化名)和其女友劉穎呕诉,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體吃度,經(jīng)...
    沈念sama閱讀 45,403評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡甩挫,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,596評論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了椿每。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片伊者。...
    茶點故事閱讀 39,769評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖间护,靈堂內(nèi)的尸體忽然破棺而出亦渗,到底是詐尸還是另有隱情,我是刑警寧澤汁尺,帶...
    沈念sama閱讀 35,464評論 5 344
  • 正文 年R本政府宣布法精,位于F島的核電站,受9級特大地震影響痴突,放射性物質(zhì)發(fā)生泄漏搂蜓。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,075評論 3 327
  • 文/蒙蒙 一辽装、第九天 我趴在偏房一處隱蔽的房頂上張望帮碰。 院中可真熱鬧,春花似錦拾积、人聲如沸殉挽。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,705評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽斯碌。三九已至,卻和暖如春玲销,著一層夾襖步出監(jiān)牢的瞬間输拇,已是汗流浹背摘符。 一陣腳步聲響...
    開封第一講書人閱讀 32,848評論 1 269
  • 我被黑心中介騙來泰國打工贤斜, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人逛裤。 一個月前我還...
    沈念sama閱讀 47,831評論 2 370
  • 正文 我出身青樓瘩绒,卻偏偏與公主長得像,于是被迫代替她去往敵國和親带族。 傳聞我的和親對象是個殘疾皇子锁荔,可洞房花燭夜當晚...
    茶點故事閱讀 44,678評論 2 354

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