ios CCUIAlertActivityView.m

objectivec 复制代码
//
//  CCUIAlertActivityView.h
//  CCFC
//
//


#import <Foundation/Foundation.h>




@interface CCUIAlertActivityView : UIView
{
        UIAlertView                             *_alertView;
        UIActivityIndicatorView *_activityView;
        
        float                                   _disappearTime;
}


// if set 0, then it won't disappear until you hide it.
@property(nonatomic, assign)    float   disappearTime;


- (id)initWithTitle:(NSString *)title;
- (void)dealloc;


- (void)show;
- (void)hide;


@end
objectivec 复制代码
//
//  CCUIAlertActivityView.m
//  CCFC
//
//


#import "CCUIAlertActivityView.h"
#import "CCNSNumber.h"
#import "CCUIView.h"
#import "CCCommon.h"
#import "CCLog.h"


@implementation CCUIAlertActivityView


@synthesize disappearTime = _disappearTime;


- (id)initWithTitle:(NSString *)title
{
        self = [super init];
        if(self)
        {
                _alertView = [[UIAlertView alloc] initWithTitle:title
                                                                                                message:nil
                                                                                           delegate:self
                                                                          cancelButtonTitle:nil
                                                                          otherButtonTitles:nil];


                _activityView = [[UIActivityIndicatorView alloc] 
                                                 initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhite];
                _activityView.frame = CGRectMake(0, 0, 20, 20);
                [_alertView addSubview:_activityView];
                [_activityView release];
        }
        return self;
}


- (void)dealloc
{
        [super dealloc];
}


- (void)onDisappear:(id)timer PRIVATE_FLAG
{
        [_activityView stopAnimating];
        [_alertView dismissWithClickedButtonIndex:0 animated:YES];
}


- (void)show
{
        [_alertView show];


        [_activityView setCenterOf:_alertView];
        [_activityView startAnimating];
        [_alertView release];
        if(!FLOAT_EQUAL_TO_ZERO(_disappearTime))
        {
                [NSTimer scheduledTimerWithTimeInterval:_disappearTime
                                                                                 target:self
                                                                           selector:@selector(onDisappear:)
                                                                           userInfo:nil
                                                                                repeats:NO];
        }
}


- (void)hide
{
        [_alertView dismissWithClickedButtonIndex:0 animated:YES];
}


@end

微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。

我是程序员小迷(致力于C、C++、Java、Kotlin、Android、Shell、JavaScript、TypeScript、Python等编程技术的技巧经验分享),若作品对您有帮助,请关注、分享、点赞、收藏、在看、喜欢,您的支持是我们为您提供帮助的最大动力。

欢迎关注。助您在编程路上越走越好!

相关推荐
敲代码的鱼36 分钟前
PDF 预览与签名批注写回 支持安卓 iOS 鸿蒙 UTS插件
android·前端·ios
时光足迹2 小时前
uni-app 视频通话实战:康复师与患者视频问诊的 6 个致命 Bug 与解决方案
android·ios·uni-app
时光足迹3 小时前
JPush UniApp UTS 插件完全参考手册:API、事件与厂商通道一网打尽
vue.js·ios·uni-app
时光足迹4 小时前
极光推送全攻略(下):uni-app 代码实现与 iOS 排查实战
vue.js·ios·uni-app
时光足迹4 小时前
极光推送全攻略(上):被iOS证书折磨了三天,我写了一份前端也能看懂的避坑指南
前端·ios·uni-app
编程范式1 天前
SwiftUI 中图片如何适配可用空间
ios
songgeb3 天前
启发式 UI 自动化:从线性剧本到每步读屏决策
ios·测试
壹方秘境7 天前
我用Go语言开发了一个跨平台的HTTPS抓包和调试工具
前端·后端·ios
初级代码游戏12 天前
easy Photo Clean公测版:快速清理iPhone照片 邀请公测
ios·iphone
库奇噜啦呼12 天前
【iOS】RunLoop学习
学习·ios