按鈕中間帶有菊花的提交按鈕

提交信息等待網(wǎng)絡(luò)請求完成或者某一個條件允許的情況下帆谍,我們會在屏幕上或者按鈕上面添加一個菊花体捏,表示當前正處于等待狀態(tài)阻塑,下面看看效果圖巷蚪,以下效果圖是結(jié)合上一篇倒計時方法寫的初狰,具體的實現(xiàn)三椿,待會兒一起看看代碼:

菊花按鈕.gif

調(diào)用代碼:

#pragma mark ---開始倒計時點擊事件
-(void)startAction{
    NSInteger time =5;
    [_endBt setTitle:[NSString stringWithFormat:@"%zd",time] forState:UIControlStateNormal];
    [_startBt showIndicator];//開始菊花轉(zhuǎn)起來
    [_startBt startTime:time waitBlock:^(NSInteger remainTime) {
        DLog(@"%zd",remainTime);
        [_endBt setTitle:[NSString stringWithFormat:@"%zd",remainTime] forState:UIControlStateNormal];
    } finishBlock:^{
        [_startBt hideIndicator];//菊花消失
        DLog(@"finishBlock");
        [_endBt setTitle:@"倒計時結(jié)束" forState:UIControlStateNormal];
    }];
}

UIButton+Indicator.h

/** 提交按鈕: 提交時在中間顯示一個菊花 */
@interface UIButton (Indicator)

/** 顯示菊花 */
- (void)showIndicator;

/** 隱藏菊花 */
- (void)hideIndicator;
@end

UIButton+Indicator.m

#import <objc/runtime.h>

static NSString *const IndicatorViewKey = @"indicatorView";
static NSString *const ButtonTextObjectKey = @"buttonTextObject";

@implementation UIButton (Indicator)

- (void)showIndicator
{
    UIActivityIndicatorView *indicator = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhite];
    indicator.center = CGPointMake(self.bounds.size.width / 2, self.bounds.size.height / 2);
    [indicator startAnimating];
    
    NSString *currentButtonText = self.titleLabel.text;
    
    objc_setAssociatedObject(self, &ButtonTextObjectKey, currentButtonText, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
    objc_setAssociatedObject(self, &IndicatorViewKey, indicator, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
    
    self.enabled = NO;
    [self setTitle:@"" forState:UIControlStateNormal];
    [self addSubview:indicator];
}

- (void)hideIndicator
{
    NSString *currentButtonText = (NSString *)objc_getAssociatedObject(self, &ButtonTextObjectKey);
    UIActivityIndicatorView *indicator = (UIActivityIndicatorView *)objc_getAssociatedObject(self, &IndicatorViewKey);
    
    self.enabled = YES;
    [indicator removeFromSuperview];
    [self setTitle:currentButtonText forState:UIControlStateNormal];
}
@end
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末亏娜,一起剝皮案震驚了整個濱河市铛纬,隨后出現(xiàn)的幾起案子职辅,更是在濱河造成了極大的恐慌棒呛,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,657評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件域携,死亡現(xiàn)場離奇詭異簇秒,居然都是意外死亡,警方通過查閱死者的電腦和手機秀鞭,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,889評論 3 394
  • 文/潘曉璐 我一進店門趋观,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人锋边,你說我怎么就攤上這事皱坛。” “怎么了豆巨?”我有些...
    開封第一講書人閱讀 164,057評論 0 354
  • 文/不壞的土叔 我叫張陵剩辟,是天一觀的道長。 經(jīng)常有香客問我往扔,道長贩猎,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,509評論 1 293
  • 正文 為了忘掉前任萍膛,我火速辦了婚禮吭服,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘蝗罗。我一直安慰自己艇棕,他們只是感情好麦到,可當我...
    茶點故事閱讀 67,562評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著欠肾,像睡著了一般瓶颠。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上刺桃,一...
    開封第一講書人閱讀 51,443評論 1 302
  • 那天粹淋,我揣著相機與錄音,去河邊找鬼瑟慈。 笑死桃移,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的葛碧。 我是一名探鬼主播借杰,決...
    沈念sama閱讀 40,251評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼进泼!你這毒婦竟也來了蔗衡?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,129評論 0 276
  • 序言:老撾萬榮一對情侶失蹤乳绕,失蹤者是張志新(化名)和其女友劉穎绞惦,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體洋措,經(jīng)...
    沈念sama閱讀 45,561評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡济蝉,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,779評論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了菠发。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片王滤。...
    茶點故事閱讀 39,902評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖滓鸠,靈堂內(nèi)的尸體忽然破棺而出雁乡,到底是詐尸還是另有隱情,我是刑警寧澤哥力,帶...
    沈念sama閱讀 35,621評論 5 345
  • 正文 年R本政府宣布蔗怠,位于F島的核電站墩弯,受9級特大地震影響吩跋,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜渔工,卻給世界環(huán)境...
    茶點故事閱讀 41,220評論 3 328
  • 文/蒙蒙 一锌钮、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧引矩,春花似錦梁丘、人聲如沸侵浸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,838評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽掏觉。三九已至,卻和暖如春值漫,著一層夾襖步出監(jiān)牢的瞬間澳腹,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,971評論 1 269
  • 我被黑心中介騙來泰國打工杨何, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留酱塔,地道東北人。 一個月前我還...
    沈念sama閱讀 48,025評論 2 370
  • 正文 我出身青樓危虱,卻偏偏與公主長得像羊娃,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子埃跷,可洞房花燭夜當晚...
    茶點故事閱讀 44,843評論 2 354

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

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,116評論 25 707
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫蕊玷、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 12,103評論 4 62
  • 起因弥雹,爬蟲群有人詢問 requests 抓取結(jié)果打印是亂碼怎么解決集畅,于是有其他人指點按照官方的文檔,用r.enco...
    超net閱讀 9,135評論 0 2
  • 早上七點半鬧鐘響起缅糟,我皺眉閉眼伸手去把床頭柜上的鬧鐘關(guān)掉挺智。昨晚睡前看電視劇看多了,我決定再瞇一會窗宦,意識模糊的又呼呼...
    星光社的戴銘閱讀 989評論 1 1
  • 時間滴滴答答流逝的太快赦颇,生日過了兩輪,日子仿佛直接從元旦跳到了六一赴涵。六月中旬的北京極熱媒怯,一點也不是我印象當中的北方...
    Jameskof閱讀 247評論 0 0