xcode 不值钱的动画UIButton
#import "ViewController.h" @interface ViewController ()
/**
按钮
*/
@property(nonatomic,weak)UIButton * btn;
/**
遮盖按钮
*/
@property(nonatomic,weak)UIButton * alpahaBtn;
@end @implementation ViewController - (void)viewDidLoad {
[super viewDidLoad];
//设置背景图片以便区分
UIImageView * imgType=[[UIImageView alloc]initWithFrame:self.view.frame];
imgType.image=[UIImage imageNamed:@"timg1"];
[self.view addSubview:imgType]; //创建阴影按钮
UIButton * alpahaBtnType=[[UIButton alloc]init];
//设置全屏
alpahaBtnType.frame=self.view.frame;
//设置背景颜色
alpahaBtnType.backgroundColor=[UIColor lightGrayColor];
//设置透明度
alpahaBtnType.alpha=0.0;
self.alpahaBtn=alpahaBtnType;
[self.view addSubview:alpahaBtnType];
[self.view bringSubviewToFront:alpahaBtnType]; CGFloat cgW=self.view.bounds.size.width;
CGFloat imgW=;
CGFloat imgH=;
CGFloat cgY=(cgW-imgW)*0.5;
//创建按钮
UIButton * btnType=[[UIButton alloc]init];
//设置图片
[btnType setImage:[UIImage imageNamed:@"timg"] forState:UIControlStateNormal];
//设置位置
btnType.frame=CGRectMake(cgY, cgY, imgW, imgH);
self.btn=btnType;
[self.view addSubview:btnType]; /**
设置点击事件
*/
[alpahaBtnType addTarget:self action:@selector(alpahaBtnTypeClick) forControlEvents:UIControlEventTouchUpInside];
[btnType addTarget:self action:@selector(btnClick) forControlEvents:UIControlEventTouchUpInside]; }
/**
消失阴影
还原图片
*/
-(void)alpahaBtnTypeClick{
//调用动画
[UIView animateWithDuration:2.0 animations:^{
CGFloat cgW=self.view.bounds.size.width;
CGFloat imgW=;
CGFloat imgH=;
CGFloat cgY=(cgW-imgW)*0.5;
self.btn.frame=CGRectMake(cgY, cgY, imgW, imgH);
self.alpahaBtn.alpha=0.0;
}];
}
/**
点击发大图片
点击还原图片
*/
-(void)btnClick{
if (self.alpahaBtn.alpha==) {
//调用动画
[UIView animateWithDuration:1.5 animations:^{
// NSLog(@"%@",NSStringFromCGRect(self.btn.frame));
CGFloat cgX=self.btn.frame.origin.x;
CGFloat cgY=self.btn.frame.origin.y;
CGFloat cgW=self.btn.frame.size.width;
CGFloat cgH=self.btn.frame.size.height;
self.btn.frame=CGRectMake(cgX-(cgX*0.5), cgY-(cgY*0.5), cgW+(cgW*0.5), cgH+(cgH*0.5));
self.alpahaBtn.alpha=; }];
}else{
[self alpahaBtnTypeClick];
}
}
@end
功能很简单就是点击按钮加大图片 在点击图片还原回去
判断条件主要判断阴影是否为0 判断阴影按钮的透明度
xcode 不值钱的动画UIButton的更多相关文章
- xcode 不值钱的动画UIImageView
了解 animateWithDuration方法 制作动画变得不值钱 代码创建一个UIImageView 后加入self.view 容器中 调用点击屏幕touchesBegan 方法执行动画 #imp ...
- xcode UIView常用方法属性动画
常见属性: @property(nonatomic,readonly) UIView *superview; 获得自己的父控件对象 @property(nonatomic,readonly,copy) ...
- Quartz2D复习(四) --- 图层CALayer和动画CAAnimation
1.CALayer 1).在ios中,能看得见摸得着的东西基本上都是UIView, 比如按钮.文本标签.文本输入框.图标等,这些都是UIView 2).UIView之所以能显示在屏幕上,完全是因为它内 ...
- Xcode + Swift 制作动态原型
转载: Xcode + Swift 制作动态原型 为什么是 Xcode 和 Swift 我们尝试过的动态原型设计工具,Origami, Form, Hype, FramerJS,Pixate 等,但都 ...
- SpriteBuilder中使用Node类型的ccb动画节点删除时崩溃的问题
因为节点需要呈现动画效果,虽然只有两个不同帧. 在SpriteBuilder中新建Bullet.ccb文件,类型为node. 添加如上2张图片,并制作动画效果帧. 在游戏中子弹遇到障碍物会被删除,时机 ...
- iOS - 开源框架、项目和学习资料汇总(动画篇)
动画 1. Core Animation笔记,基本的使用方法 – Core Animation笔记,基本的使用方法:1.基本动画,2.多步动画,3.沿路径的动画,4.时间函数,5.动画组.2. awe ...
- ios项目里扒出来的json文件
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px Menlo; color: #000000 } p.p2 { margin: 0.0px 0. ...
- Github上关于iOS的各种开源项目集合(强烈建议大家收藏,查看,总有一款你需要)
下拉刷新 EGOTableViewPullRefresh - 最早的下拉刷新控件. SVPullToRefresh - 下拉刷新控件. MJRefresh - 仅需一行代码就可以为UITableVie ...
- iOS及Mac开源项目和学习资料【超级全面】
UI 下拉刷新 EGOTableViewPullRefresh – 最早的下拉刷新控件. SVPullToRefresh – 下拉刷新控件. MJRefresh – 仅需一行代码就可以为UITable ...
随机推荐
- FLAG_ACTIVITY_NEW_TASK和SingleInstance的设计思路(多task的应用)
这部分的想法都是基于以下两点: 1.Activity可能被复用,可能是复用Activity的功能,还可能是复用Activity的状态: 2.Task的作用:target,同一个task中的Activi ...
- gulp+webpack+vue
gulp+webpack+vue 章节目录 1.目标 2.实现 2.1合并库文件 2.2组织业务代码 2.3打包开发代码 2.4使用webpack-dev-server和热替换插件HotModuleR ...
- 从零单排PAT1015,1016,1017,1018
1015德才论 题目要求: 输入格式: 输入第1行给出3个正整数,分别为:N(<=105),即考生总数.L(>=60).为录取最低分数线,即德分和才分均不低于L的考生才有资格被考虑录取:H ...
- JavaSE思维导图(六)
- jvm栈和堆详解
Java把内存分成两种,一种叫做栈内存,一种叫做堆内存 在函数中定义的一些基本类型的变量和对象的引用变量都是在函数的栈内存中分配.当在一段代码块中定义一个变量时,java就在栈中为这个变量分配内存空间 ...
- 读数据库所有表和表结构的sql语句
SQL获取所有数据库名.表名.储存过程以及参数列表 1.获取所有用户名:SELECT name FROM Sysusers where status='2' and islogin='1'islogi ...
- 电脑技巧---完全控制面板---上帝模式(God Mode)
简介 上帝模式,即"God Mode”,或称为“完全控制面板”.是Windows 系统中隐藏的一个简单的文件夹窗口,但包含了几乎所有Windows系统的设置,如控制面板的功能.界面个性化.辅 ...
- R与数据分析旧笔记(十三) 聚类初步
聚类 聚类 关键度量指标:距离 常用距离 绝对值距离 绝对值距离也称为"棋盘距离"或"城市街区距离". 欧氏(Euclide)距离 闵可夫斯基(Minkowsk ...
- 根据不同需求跳转不同Activity的另外一种写法
代码如下: /* Android Asynchronous Http Client Sample Copyright (c) 2014 Marek Sebera <marek.sebera@gm ...
- java新特性之可变参数
public class NewDemo01 { public static void main(String[] args) { System.out.print(" ...