請(qǐng)教下拉刷新的問(wèn)題

最近一直在忙項(xiàng)目,遇到了個(gè)下拉刷新的問(wèn)題想提出個(gè)疑問(wèn)颓鲜,還請(qǐng)知情的同學(xué)不吝賜教表窘。順便再放出這段時(shí)間忙項(xiàng)目時(shí)候的倆小demo。

Demo No.1

要實(shí)現(xiàn)的下拉刷新效果是這樣的:

iPhone_GIF.gif

我的思路是這樣的甜滨。使用MJ大大的框架自定義一個(gè)Header然后根據(jù)MJRefreshState的各種狀態(tài)進(jìn)行header界面的調(diào)整乐严。可是寫(xiě)完之后發(fā)現(xiàn)當(dāng)header比較高的時(shí)候MJRefreshStatePulling這個(gè)手指松開(kāi)就可以進(jìn)行刷新的狀態(tài)監(jiān)測(cè)不到艳吠。目前只實(shí)現(xiàn)了這樣的效果

status_GIF.gif

Paste_Image.png

Demo已放在Github麦备,希望知道的同學(xué),給解惑一下昭娩。在下感激不盡凛篙!謝謝。

Demo No.2

由于公司項(xiàng)目是電商栏渺,收獲地址這塊就用的是三級(jí)城市列表呛梆。因此就從項(xiàng)目中摘了出來(lái),簡(jiǎn)單寫(xiě)了一下磕诊,效果如圖:


address_GIF.gif

寫(xiě)的過(guò)程中填物,比較坑的是添加收貨地址時(shí)候后臺(tái)告訴我要傳省、市霎终、區(qū)(縣)對(duì)應(yīng)的ID滞磺,并且收獲地址列表返回?cái)?shù)據(jù)是對(duì)應(yīng)的ID。頓時(shí)都無(wú)語(yǔ)了莱褒,強(qiáng)烈要求他在列表里直接返回對(duì)應(yīng)的省市區(qū)(縣)名字了击困。不然三個(gè)大數(shù)組,返回的上千條數(shù)據(jù)广凸,列表和詳情都轉(zhuǎn)模型阅茶,再遍歷蛛枚,這要遍歷到啥時(shí)候了。脸哀。蹦浦。
關(guān)鍵點(diǎn)是顯示到界面時(shí)候的邏輯判斷,也就是取數(shù)據(jù)的這一塊撞蜂。盲镶。。

#pragma mark - 點(diǎn)擊確定按鈕事件
/**
 點(diǎn)擊確定按鈕事件
 
 @param sender sender
 */
- (void)completionButtonAction:(UIButton *)sender
{
    
    NSString *provinceName = @"";
    NSString *cityName = @"";
    NSString *regtionName = @"";
    
    NSInteger _provinceID = 0;
    NSInteger _cityID = 0;
    NSInteger _regtionID = 0;
    
    HPAddAddressPickerModel *pickerModel;
    HPAddAddressCityModel *cityModel;
    HPAddAddressRegionModel *regtionModel;
    
    if (_provinceArray.count > 0) {
        if (_firstCurrentIndex > 0) {
            if (_firstCurrentIndex - 1 < _provinceArray.count) {
                pickerModel = _provinceArray[_firstCurrentIndex - 1];
                //獲取省
                provinceName =  pickerModel.name;
                _provinceID = pickerModel.provinceID;
            }
        }
    }
    
    if (_cityArray.count > 0) {
        if (_secondCurrentIndex > 0) {
            if (_secondCurrentIndex - 1 < _cityArray.count) {
                cityModel = _cityArray[_secondCurrentIndex - 1];
                //獲取市
                cityName = cityModel.name;
                if (cityModel.parent_id == pickerModel.provinceID) {
                    _cityID = cityModel.city_id;
                }
            }
        }
    }
    
    if (_regionArray.count > 0) {
        if (_thirdCurrentIndex > 0) {
            if (_thirdCurrentIndex - 1 < _regionArray.count) {
                //獲取區(qū)
                regtionModel = _regionArray[_thirdCurrentIndex - 1];
                regtionName = regtionModel.name;
                if (regtionModel.parent_id == cityModel.city_id) {
                    _regtionID = regtionModel.region_id;
                }
                
            }
        }
    }
    NSLog(@"省%ld 市%ld  區(qū)%ld",_provinceID,_cityID,_regtionID);
    if (_provinceID == 0) {
      //  [STTextHudTool showText:@"請(qǐng)選擇正確的省份" withSecond:1];
        return;
    }else if (_cityID == 0) {
       // [STTextHudTool showText:@"請(qǐng)選擇正確的城市" withSecond:1];
        return;
    }else if (_regtionID == 0){
      //  [STTextHudTool showText:@"請(qǐng)選擇正確的區(qū)(縣)" withSecond:1];
        return;
    }
    NSDictionary *params = @{
                             @"province":  @{
                                     @"provinceName":provinceName,
                                     @"provinceID":kStringIntegerFormat(_provinceID)
                                     },
                             @"city": @{
                                     @"cityName":cityName,
                                     @"cityID":kStringIntegerFormat(_cityID)
                                     },
                             @"regition":@{
                                     @"regtionName":regtionName,
                                     @"regitionID":kStringIntegerFormat(_regtionID)
                                     },
                             };
    if (_completion) {
        _completion(params);
    }
}

詳情請(qǐng)點(diǎn)擊GitHub地址

Demo No.3

公司項(xiàng)目首頁(yè)搶購(gòu)商品cell上需要根據(jù)后臺(tái)返回的結(jié)束時(shí)間加一個(gè)倒計(jì)時(shí)×律悖現(xiàn)在也把這塊給抽出來(lái)了徒河,效果如圖:

Curtdown_GIF.gif

實(shí)現(xiàn)思路就是先寫(xiě)了個(gè)NSString+Extension的分類系馆,然后把后臺(tái)返回的結(jié)束時(shí)間轉(zhuǎn)化為倒計(jì)時(shí)一共的時(shí)間送漠。然后用GCD寫(xiě)個(gè)一秒鐘的倒計(jì)時(shí)。每1秒鐘給cell上的UILable賦值一次由蘑。雖然性能不會(huì)很好闽寡,但是能力有限,想不到更好的方式了尼酿。有其他寫(xiě)法的童鞋爷狈,也請(qǐng)多多指教~
關(guān)鍵代碼在這里:

- (void)viewDidLoad {
    [super viewDidLoad];
    
    WS(weakSelf);
    [self.tableView registerClass:[UITableViewCell class] forCellReuseIdentifier:@"reuseIdentifier"];
    [self.homePageViewModel countDownWithPER_SECBlock:^{
        [weakSelf updateTimeInVisibleCells];
    }];
}

#pragma mark - Custom Method
- (void)updateTimeInVisibleCells
{
    //遍歷當(dāng)前 屏幕可見(jiàn)cell,對(duì)cell上的倒計(jì)時(shí)一秒鐘賦值一次
    [self.tableView.visibleCells enumerateObjectsUsingBlock:^(__kindof UITableViewCell * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
        if ( [obj isKindOfClass:[UITableViewCell class]]) {
     // [NSString stringToCurtDownString:string] 這個(gè)是分類方法
           obj.textLabel.text = [NSString stringToCurtDownString:self.homePageViewModel.rushArray[obj.tag]];
        }
    }];
}

詳情請(qǐng)點(diǎn)擊GitHub地址

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末裳擎,一起剝皮案震驚了整個(gè)濱河市涎永,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌鹿响,老刑警劉巖羡微,帶你破解...
    沈念sama閱讀 216,544評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異惶我,居然都是意外死亡妈倔,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén)绸贡,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)盯蝴,“玉大人,你說(shuō)我怎么就攤上這事听怕∨跬Γ” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,764評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵尿瞭,是天一觀的道長(zhǎng)闽烙。 經(jīng)常有香客問(wèn)我,道長(zhǎng)筷厘,這世上最難降的妖魔是什么鸣峭? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,193評(píng)論 1 292
  • 正文 為了忘掉前任宏所,我火速辦了婚禮,結(jié)果婚禮上摊溶,老公的妹妹穿的比我還像新娘爬骤。我一直安慰自己,他們只是感情好莫换,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,216評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布霞玄。 她就那樣靜靜地躺著,像睡著了一般拉岁。 火紅的嫁衣襯著肌膚如雪坷剧。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,182評(píng)論 1 299
  • 那天喊暖,我揣著相機(jī)與錄音惫企,去河邊找鬼。 笑死陵叽,一個(gè)胖子當(dāng)著我的面吹牛狞尔,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播巩掺,決...
    沈念sama閱讀 40,063評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼偏序,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了胖替?” 一聲冷哼從身側(cè)響起研儒,我...
    開(kāi)封第一講書(shū)人閱讀 38,917評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎独令,沒(méi)想到半個(gè)月后端朵,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,329評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡记焊,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,543評(píng)論 2 332
  • 正文 我和宋清朗相戀三年逸月,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片遍膜。...
    茶點(diǎn)故事閱讀 39,722評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡碗硬,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出瓢颅,到底是詐尸還是另有隱情恩尾,我是刑警寧澤,帶...
    沈念sama閱讀 35,425評(píng)論 5 343
  • 正文 年R本政府宣布挽懦,位于F島的核電站翰意,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜冀偶,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,019評(píng)論 3 326
  • 文/蒙蒙 一醒第、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧进鸠,春花似錦稠曼、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,671評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至量瓜,卻和暖如春司恳,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背绍傲。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,825評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工扔傅, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人唧取。 一個(gè)月前我還...
    沈念sama閱讀 47,729評(píng)論 2 368
  • 正文 我出身青樓铅鲤,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親枫弟。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,614評(píng)論 2 353

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