偶然的机会发现window的阿里旺旺的登陆效果蛮有意思的,于是就模仿着做了一下打印机吐纸的动画效果
看起来很神奇的东西,实现起来却不难,下面我给大家看下主要的源码。

- (void)createUI{    UIImageView *backimageView=[[UIImageView alloc]init];    
   backimageView.image =[UIImage imageNamed:@"1.png"];    
   backimageView.frame = CGRectMake(50, 100, LBSCREEN_WIDTH-100, 30);    
   [self.view addSubview:backimageView];    
   backView = [[UIView alloc]initWithFrame:CGRectMake(60, 115, LBSCREEN_WIDTH-120, 0)];    
   backView.layer.cornerRadius = 5;    
   backView.backgroundColor = [UIColor whiteColor];    
   backView.layer.borderWidth = 1;    
   backView.layer.borderColor = [UIColor blackColor].CGColor;    
   backView.clipsToBounds = YES;    
   [self.view addSubview:backView];    
   login_btn = [UIButton buttonWithType:UIButtonTypeCustom];    
   login_btn.frame = CGRectMake(10, 120, LBSCREEN_WIDTH-140, 35);    
   [login_btn setTitle:@"登陆" forState:UIControlStateNormal];    
   login_btn.backgroundColor = [UIColor lightGrayColor];    
   login_btn.layer.cornerRadius = 5;    
   login_btn.layer.borderWidth = 1;    
   login_btn.layer.borderColor = [UIColor lightGrayColor].CGColor;    
   [login_btn addTarget:self action:@selector(passwordClick:) forControlEvents:UIControlEventTouchUpInside];    
   login_btn.clipsToBounds = YES;    
   pass_btn = [UIButton buttonWithType:UIButtonTypeCustom];    
   pass_btn.frame = CGRectMake(10, 165, LBSCREEN_WIDTH-140, 35);    
   [pass_btn setTitle:@"注册" forState:UIControlStateNormal];    
   pass_btn.backgroundColor = [UIColor redColor];    
   [pass_btn addTarget:self action:@selector(passwordClick:) forControlEvents:UIControlEventTouchUpInside];    
   pass_btn.layer.cornerRadius = 5;    
   pass_btn.layer.borderWidth = 1;    
   pass_btn.layer.borderColor = [UIColor lightGrayColor].CGColor;    
   pass_btn.clipsToBounds = YES;    
   Name_textfield = [[UITextField alloc]initWithFrame:CGRectMake(10, 20, LBSCREEN_WIDTH-140, 40)];    
   Name_textfield.placeholder = @"帐号";    
   Name_textfield.borderStyle = UITextBorderStyleRoundedRect;    
   Pass_textfield = [[UITextField alloc]initWithFrame:CGRectMake(10, 70, LBSCREEN_WIDTH-140, 40)];    
   Pass_textfield.borderStyle = UITextBorderStyleRoundedRect;    
   Pass_textfield.placeholder = @"密码";    //2秒后开始一个持续一分钟的动画    
   [UIView animateWithDuration:1 delay:2 options:UIViewAnimationOptionBeginFromCurrentState animations:^{        
       backView.frame=CGRectMake(60, 115, LBSCREEN_WIDTH-120, 210);    
   } completion:^(BOOL finished) {          [backView addSubview:Name_textfield];        
         dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.3 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{            
           [backView addSubview:Pass_textfield];            
               dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.3 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{                
                 [backView addSubview:login_btn];                
                 dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.3 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{                    
                   [backView addSubview:pass_btn];                
                  });            
           });        
       });
    }];
}
- (void)passwordClick:(UIButton *)sender{
    NSLog(@"hhhhh....");
}

不难看懂吧?主要就用到了一个改变frame的动画,x轴和y轴以及宽不变,改变它的高
下面晒下效果图

(http://allluckly.cn)

源码下载的地址

下载地址:https://github.com/AllLuckly/LBPrinterPaper

仿window阿里旺旺登陆界面,打印机吐纸动画效果-b的更多相关文章

  1. .Net语言 APP开发平台——Smobiler学习日志:仿12306的APP登陆界面

    最前面的话:Smobiler是一个在VS环境中使用.Net语言来开发APP的开发平台,也许比Xamarin更方便 一.目标样式 我们要实现上图中的效果,需要如下的操作: 1.从工具栏上的”Smobil ...

  2. window.requestAnimationFrame()的使用,处理更流畅的动画效果

    https://blog.csdn.net/w2765006513/article/details/53843169 window.requestAnimationFrame()的使用 2016年12 ...

  3. Qt之界面出现、消失动画效果(简单好用)

    在学习Qt的这2.3个月里,对Qt越发感兴趣,从刚开始的盲目.无所适从到现在的学习.研究.熟练.掌握的过程中,我学到了很多东西,也学会了如何通过自学让自己更加成熟.强大起来,如何更有效地提高自己学习. ...

  4. Qt之界面出现、消失动画效果

    在学习Qt的这2.3个月里,对Qt越发感兴趣,从刚开始的盲目.无所适从到现在的学习.研究.熟练.掌握的过程中,我学到了很多东西,也学会了如何通过自学让自己更加成熟.强大起来,如何更有效地提高自己学习. ...

  5. 仿知乎/途家导航栏渐变文字动画效果-b

    demo.gif 效果图如上,简单分析下 1.导航栏一开始是隐藏的,随着scrollView滚动而渐变 2.导航栏左右两边的navigationItem是一直显示的 3.导航栏参考了途家app,使用了 ...

  6. vue2.0 仿手机新闻站(七)过滤器、动画效果

    1.全局过滤器 (1)normalTime.js  自定义 将 时间戳 转换成 日期格式 过滤器 /** * 将 时间戳 转换成 日期格式 */ export const normalTime = ( ...

  7. Win7如何取消用户登陆界面

    Window取消用户登陆界面 用户已设置密码状态下:删除密码即可. 用户无密码状态下: 运行 → control userpasswords2 → 找到“要使用本机,用户必须输入用户名与密码”这一项, ...

  8. 仿饿了吗点餐界面两个ListView联动效果

    这篇文章主要介绍了仿饿了点餐界面2个ListView联动效果的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下 如图是效果图: 是仿饿了的点餐界面 1.点击左侧的ListView,通过在在适 ...

  9. iOS中三种方式实现登录界面播放视频或gif效果

    现在app都做的越来越炫酷,各种动画效果,各种特效很好的提高了用户的体验.很多app在登录界面都使用了动画效果,比如Uber,Keep,QQ等等.这些动画效果基本都是使用gif或者MP4来实现的. 效 ...

随机推荐

  1. docker container link

    http://blog.csdn.net/kongxx/article/details/38676917

  2. 关于gnome

    关于GNOME GNOME(发音为英语发音:/ɡəˈnoʊm/[4]),即GNU网络对象模型环境(英语:The GNU Network Object Model Environment),GNU计划的 ...

  3. javascript/jquery给动态加载的元素添加click事件

    /** 这种写法:在重新加载数据后事件依然有效*/$(document).on('click', '#district_layer ul li', function () { });

  4. PullToRefresh的个性化扩展

    一:实现区别下拉刷新和上拉加载 参考资料:http://blog.csdn.net/losetowin/article/details/18261389 在PullToRefresh的类库的com.h ...

  5. MySQL - 启停服务

    Windows 环境 命令行方式 启动 MySQL 服务: net start mysql停止 MySQL 服务: net stop mysql 注:需要以管理员身份启动 cmd 后再执行上述命令. ...

  6. ibatis 到 MyBatis区别

    http://blog.csdn.net/techbirds_bao/article/details/9235309 简介: 本文主要讲述了 iBatis 2.x 和 MyBatis 3.0.x 的区 ...

  7. Spring引用测试

    上下文 using System; using Spring.Core; using Spring.Aop; using System; using Spring.Core; using Spring ...

  8. 修改Latex常用编辑器WinEdt中的字号与字体 [转]

    用latex编写科技文章已经是大多数科研工作者采用的方法,其编写效果是word所远不能及的.但是其效果只是在编译之后,之前文字那弱小的身躯确实令很多人无奈.10Pt的字体在以前14寸的电脑上看起来还是 ...

  9. ubuntu系统下wireshark普通用户抓包设置

    dumpcap需要root权限才能使用的,以普通用户打开Wireshark,Wireshark当然没有权限使用dumpcap进行截取封包.   虽然可以使用    sudo wireshark    ...

  10. make fontconfig 时出现No package ‘libxml-2.0′ found的解决方法

    这里显示一个错误信息:checking for LIBXML2… configure: error: Package requirements (libxml-2.0 >= 2.6) were ...