swift3.0技术贴IOS

iOS自定义带有动画效果AlertView

2016-04-07  本文已影响1161人  劉光軍_MVP

最近比较闲,提前为下个项目中需要用得到功能造个轮子.alertView在项目中应该经常用的到,然而用自带的系统控件多少缺乏点儿激情.于是打算给alertView加上一点点儿动画,(这里的动画用到的是faceBook的POP)提高用户体验.话不多说.看效果图先:

第一个是弹出提示信息后自动消失的alertView


messageAlert.png

第二个是弹出带有button的alertView


NormalAlert.png

接下来大体说一下思路:

首先创建这两个不同形式alert的基


在.h中:
AbstractBasicAlertView基类里面定义了所有需要用到的控件的属性title subTitle message buttonsTitle contentView autoHiden delayAutoHidenDuration 以及方法:-(void)show; -(void)hide -(void)setView:(UIView *)view withKey:(NSString *)key;-(UIView *)viewWithKey:(NSString *)key;
以及协议方法:协议方法会在viewController中使用到的时候说明他们的意思

- (void)alertView:(AbstractBasicAlertView *)alertView data:(id)data atIndex:(NSInteger)index;

- (void)alertViewWillHide:(AbstractBasicAlertView *)alertView;

- (void)alertViewDidHide:(AbstractBasicAlertView *)alertView;```
在.m中:
声明一个字典:```NSMapTable```这是一个弱引用的字典,也可以替换成NSMutableDictionary.

这两个方法是将view根据key放入字典中存起来,在viewController中会有用到


#####MessageAlertView
基于```AbstractBasicAlertView```创建提示信息的alertView.
复写父类方法:



#####ButtonsAlertView
其实大部分是模仿alertView构建相似的一个视图

初始化:

重写父类方法:

}

创建视图:
按钮点击后将代理方法传递出去
#####ViewController中,定义两种alertView的样式

}

执行代理方法,可以在这个店里方法中做一些其他的操作,不过我们alertView的大致作用就是一个提示作用了.

}


demo地址:https://github.com/irembeu/AnimationAlertView.git
上一篇 下一篇

猜你喜欢

热点阅读