240 發(fā)簡信
IP屬地:上海
  • 我也遇到了同樣的問題,只要史瀑布流,sectionHeadersPinToVisibleBounds設(shè)置為true就沒效果

    UICollectionView SectionHeader懸浮

    寫在前面 這一系列文章是最近寫的一款簡單的音樂播放器中涉及到的一些比較實用的技術(shù)富岳,希望能對大家的開發(fā)提供幫助蛔溃,這是播放器的Github地址脏毯。 自定義UICollectionV...

  • git reset --hard id 救了我的命

    【Git】rebase 用法小結(jié)

    歡迎關(guān)注微信公眾號:全棧工廠 本文主要參考https://git-scm.com/docs/git-rebase[https://git-scm.com/docs/git-r...

  • 對象的指針是為了回傳值吧
    就比如
    - (void)func:(BOOL **) value {
    *value = xxx;
    }

    引用計數(shù)帶來的一次討論

    關(guān)于 NSString 的疑問 打印結(jié)果: 會發(fā)現(xiàn)引用計數(shù)是一個很大的值滴某,為什么乡翅?這是一個放在常量區(qū)的字符串常量剪个,返回的結(jié)果是UINT_MAX值 關(guān)于 release ...

  • iOS進階:WebViewJavascriptBridge源碼解讀

    WebViewJavascriptBridge GitHub地址 jsBridge框架是解決客戶端與網(wǎng)頁交互的方法之一秧骑。最主要的實現(xiàn)思路是客戶端在webivew的代理方法中攔...

  • 用信號量呀

    AFN 3.0

    切記,保留 AFHTTPSessionManager 的引用扣囊, 在適當?shù)臅r候調(diào)用 方法乎折,否則 AFHTTPSessionManager 不會 dealloc。

  • 方案一我試了一下侵歇,會影響別的App骂澄,這樣肯定是不行的

    關(guān)于iOS禁止截屏

    背景 在日常開發(fā)的一些業(yè)務(wù)場景中,如果涉及到一些敏感信息(如:付款的二維碼或條形碼等)盒至,而我們不希望相關(guān)敏感信息被隨意傳播酗洒。此時自然就會產(chǎn)生禁止截屏這個需求。 實現(xiàn)方式 禁止...

  • - (void)removeAllSubviews {
    //[self.subviews makeObjectsPerformSelector:@selector(removeFromSuperview)];
    while (self.subviews.count) {
    [self.subviews.lastObject removeFromSuperview];
    }
    }
    這個方法不錯枷遂,YYKit 的源碼

  • 1.userWithBlock里面應該是這樣:
    + (UserBuilder *)userWithBlock:(void (^)(UserBuilder *))block {
    UserBuilder *b =[ [UserBuilder alloc] init];
    !block ?: block(b);
    retuen b;
    }

    2.NSString類型確實應該用copy樱衷,因為有對應的可變類型

    iOS 創(chuàng)建對象的姿勢

    在寫 iOS 代碼的時候,怎么樣去 new 一個新對象出來酒唉,都有一些講究在里面矩桂。使用不同的姿勢去創(chuàng)建對象,對后期維護所造成的影響會存在細微的差別痪伦。 init 創(chuàng)建 在之前一篇...

  • 幾個常用轉(zhuǎn)換:
    id (*function1)(id, SEL, BOOL(^)(BOOL b)) = (id (*)(id, SEL, BOOL (^)(BOOL b)))objc_msgSend;

    id (*function2)(id, SEL, id) = (id (*)(id, SEL, id))objc_msgSend;

    id (*functionSuper)(id, SEL, ...) = (id(*)(id, SEL, ...))objc_msgSendSuper

    版本變化-objc_msgSend的坑

    來歷 寫給想玩runtime卻又難以開啟征程的小伙伴侄榴。這個函數(shù)是包含在頭文件<objc/message.h>當中的一個支撐起整個消息發(fā)送機制的關(guān)鍵函數(shù)。也和OC的runtim...

  • 在LinkListIterator里面增加一個BOOL isHeader標記位网沾,初始化里面設(shè)置為YES癞蚕,在nextItem判斷,如果為YES就直接返回self.currentNode,否則就等于下一個節(jié)點辉哥,然后返回

    iOS設(shè)計模式--迭代器

    學習迭代器之前桦山,先看一種數(shù)據(jù)結(jié)構(gòu)--線性表 線性表:線性表是最基本攒射,最簡單,也是最常用的一種數(shù)據(jù)結(jié)構(gòu)恒水。 線性表中數(shù)據(jù)元素之間的關(guān)系是一對一的關(guān)系会放,即除了第一個和最后一個數(shù)據(jù)元...

  • @奔小康 那如果想在block的回調(diào)里面加埋點,應該怎么hook?

    iOS無埋點數(shù)據(jù)SDK實踐之路

    本篇文章是基于 網(wǎng)易樂得無埋點數(shù)據(jù)SDK 總結(jié)而成钉凌。負責無埋點數(shù)據(jù)收集 SDK 的開發(fā)已經(jīng)有半年多了咧最,期間在組內(nèi)進行過相關(guān)分享,現(xiàn)在覺得是時候拿出去和同行們交流下了御雕。本篇主要...

  • 120
    2018收集iOS筆試題(僅供參考學習使用)

    第一波: 自答:說實話,剛剛看到這套面試題,我覺得還是很難的,這是要招聘大牛的節(jié)奏啊...好吧,菜鳥一枚的我來試著回答一下. 1.什么是函數(shù)式編程矢沿?說起鏈式編程和函數(shù)式編程,...

  • 不過現(xiàn)在感覺延時特別大酸纲,大概在4-5秒的延時咨察,就算在同一個局域網(wǎng)內(nèi),延時也很大

    一步步搭建視頻直播系統(tǒng)福青,基于LFLiveKit+ijkplayer+rtmp(iOS端)

    本文主要使用的三個技術(shù): 推流:LFLiveKit 播放:ijkplayer 服務(wù)器:nginx+rtmp+ffmpeg 有了這三點技術(shù)就可以完成一個簡約的直播系統(tǒng)摄狱。效果圖如...

  • 我也成功了,感謝博主帶路

    一步步搭建視頻直播系統(tǒng)无午,基于LFLiveKit+ijkplayer+rtmp(iOS端)

    本文主要使用的三個技術(shù): 推流:LFLiveKit 播放:ijkplayer 服務(wù)器:nginx+rtmp+ffmpeg 有了這三點技術(shù)就可以完成一個簡約的直播系統(tǒng)媒役。效果圖如...

  • 純OC實現(xiàn)的快速排序和選擇排序
    快速排序:
    + (NSArray<NSNumber *> *)quickSortForRandomPovit:(NSMutableArray<NSNumber *> *)sourceArray {
    if (sourceArray.count < 2) {
    return sourceArray;
    }
    NSInteger povit = [sourceArray[arc4random() % sourceArray.count] integerValue]; //
    NSMutableArray<NSNumber *> *less = [NSMutableArray new];
    NSMutableArray<NSNumber *> *greater = [NSMutableArray new];
    for (NSNumber *number in [[sourceArray subarrayWithRange:NSMakeRange(1, sourceArray.count - 1)] mutableCopy]) { // 每次從下標為1處開始截取
    if (povit > [number intValue]) {
    [less addObject:number];
    } else {
    [greater addObject:number];
    }
    }
    return [[[self quickSort:less] arrayByAddingObjectsFromArray:@[sourceArray[0]]] arrayByAddingObjectsFromArray:[self quickSort:greater]];
    }

    // 選擇排序
    + (NSArray *)selectionSort:(NSArray *)sourceArray {
    NSMutableArray *sourceMutableArray = [sourceArray mutableCopy];
    NSMutableArray *returnArray = [NSMutableArray array];
    for (int i = 0; i < sourceArray.count; i ++) { // 一定要循環(huán)sourceArray,遍歷最原始的數(shù)組宪迟,而不是sourceMutableArray酣衷,因為sourceMutableArray一直在變
    // 找到數(shù)組中最小元素的下標
    int smallIndex = [self findSmallItemIndex:sourceMutableArray];
    [returnArray addObject:sourceMutableArray[smallIndex]];
    [sourceMutableArray removeObjectAtIndex:smallIndex];// 每循環(huán)一次把sourceMutableArray里面的最小元素消除
    }
    return returnArray;
    }

    // 找到數(shù)組中最小元素的下標
    + (int)findSmallItemIndex:(NSArray *)array {
    int smallItem = (int)array[0];
    int smallIndex = 0;
    for (int i = 0; i < array.count; i ++) {
    if (smallItem > (int)array[i]) {
    smallItem = (int)array[i];
    smallIndex = i;
    }
    }
    return smallIndex;
    }

    iOS算法總結(jié)-快速排序

    快速排序 快速排序(Quick Sort) 的基本思想是:通過一趟排序?qū)⒋判虻挠涗浄指畛瑟毩⒌膬刹糠郑渲幸徊糠钟涗浀年P(guān)鍵字均比另一部分記錄的關(guān)鍵字小次泽,則可分別對這兩部分記...

  • 在Swift中同時用代理和Block(Closure)回調(diào)

    目的: A頁面push到B頁面,點擊B頁面的按鈕傳值到A頁面捐寥,分別用delegate和Block來實現(xiàn) 1.在頁面B定義delegate和Block ``` importUI...

  • 循環(huán)語句在bat文件上面的應用

    :chongfu 這里寫你的adb命令 ping127.0.1-n"5">nul gotochongfu 追問 那我想循環(huán)1000次就停止呢笤昨?該怎么加? 還有第3行是什么意思...

亚洲A日韩AV无卡,小受高潮白浆痉挛av免费观看,成人AV无码久久久久不卡网站,国产AV日韩精品