iOS弹出一个View(自定义的提示框)
来源:互联网 发布:java 编码格式 编辑:程序博客网 时间:2024/05/16 23:34
之前要写一个iPad的一个项目,里面有一个分享的按钮,弹出一个View,上面几个图片按钮,菜菜的我为了这个小功能花费了很多时间,最后弄明白了,发现之前的思路都想错了,要实现弹出一个View,其实就是先创建两个View(一个遮罩,一个装显示的内容)在点击按钮的时候把这两个View添加到self.view上面先添加遮罩的View,再添加内容的View,不要忘了代码的执行顺序,两个view是分开添加的,不要把内容view添加到遮罩view上面一次添加,点击遮罩view的时候就应该把这两个View remove掉,(2016-11-15新增内容:几个月的成长我深知我写的这个博客技术含量很低,但是相比还是能够帮很多初学者的,为了更好的提升自定义提示框显示出现退出效果,我加了一个View类的block方法,使用它可以实现较为简单的一些动画~代码在最下面):
首先创建两个view:
@property (nonatomic,strong) UIView * maskTheView;@property (nonatomic,strong) UIView * shareView;
然后写好GET方法;遮罩view的点击手势点击的时候走一个方法,remo的代码放在里面
- (UIView *)maskTheView{ if (!_maskTheView) { _maskTheView = [[UIView alloc]initWithFrame:[UIScreen mainScreen].bounds]; _maskTheView.backgroundColor = [UIColor colorWithRed:0/255.f green:0/255.f blue:0/255.f alpha:0.5]; //添加一个点击手势 UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(maskClickGesture)]; [_maskTheView addGestureRecognizer:tap];//让header去检测点击手势 } return _maskTheView;}- (UIView *)shareView{ if (!_shareView) { _shareView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, 320, 160)]; _shareView.center = CGPointMake(self.view.frame.size.width/2, self.view.frame.size.height/2); _shareView.backgroundColor = [UIColor whiteColor]; } return _shareView;}
然后在按钮的点击事件里面添加这两个view
[self.view addSubview:self.maskTheView]; [self.view addSubview:self.shareView];
点击手势的点击事件
- (void)maskClickGesture{ [self.maskTheView removeFromSuperview]; [self.shareView removeFromSuperview];}
以上就是实现代码部分,我想这个应该能帮助一些和我一样的初入iOS的朋友们,这个方法可以实现很多样式的弹出效果
新增view的block方法实现简单动画的view - block:
声明的那个提示框,在一开始设置好了他的大小位置以后,可以通过某个按钮的点击事件里面写上下面的代码,在下面的blcok代码块里面你可以再次将那个提示框的大小位置重新定制,比如原先我这个视图100*100的宽高,位置处于屏幕外面,我可以让它在点某个按钮时盖面状态为大小200*200宽高,位置为X 200,Y 200的位置显示,旧位置和新位置变化的时长为0.25秒:
UIView * view1 = [[UIView alloc]initWithFrame:CGRectMake(-100, 100, 100, 100)];
[UIView animateWithDuration:0.25 animations:^{//0.25是指动画时长,视自身情况而定 CGRect rect = CGRectMake(200, 200, 200, 200); //新的位置及大小 view1.frame = rect; //把新的frame赋值给view1就可以了,这个blcok就会在你上面设置的时间里完成这个view的状态位置的改变 }];
除了改变位置其实还可以在里面让它淡出淡入等动画,这些需要你们自己去拓展咯!
- iOS弹出一个View(自定义的提示框)
- 弹出框,有两个,自定义一个view和系统的
- 弹出自定义提示框
- 自定义弹出提示框
- IOS开发之自定义系统弹出键盘上方的view
- IOS开发之自定义系统弹出键盘上方的view
- IOS开发之自定义系统弹出键盘上方的view
- ios UIImagePickerController 添加一个自定义的view。
- iOS自定义键盘弹出view的位置移动(三种方法)
- IOS弹出提示框
- IOS弹出提示框
- 右下角弹出一个小的提示框
- 自定义一个View作为弹出对话框
- IOS自定义弹出框
- iOS自定义弹出框
- jQuery,实现想弹出什么,弹出什么(弹出提示、弹出一个新的页面等等)
- ios 弹出用户提示框
- iOS自定义弹出框(UIAleartView)
- 珍贵博客链接
- FAST特征点检测
- 数据库索引
- iOS presentViewController 页面透明设置
- JNI 实战全面解析
- iOS弹出一个View(自定义的提示框)
- 80X86寄存器详解
- Android天气预报程序(七)
- codehunt 1.10
- AngularJs 第一个自定义指令编写
- JavaScript入门
- 逆置字符串之三步翻转
- 关于AndroidStudio 配置gradle和gradle插件的问题
- android studio首次打开