ios学习之个人笔记(按钮操作)
来源:互联网 发布:诛仙三卡级软件 编辑:程序博客网 时间:2024/05/20 18:42
此小程序主要实现下面按钮对“图片按钮”的操作,移动、放大、缩小和旋转的功能。
最终效果图:
//这里是用到的属性和方法声明@interface ViewController ()@property (weak, nonatomic) IBOutlet UIButton *btnImg;- (IBAction)move:(UIButton *)sender;- (IBAction)rotate:(UIButton *)sender;- (IBAction)scale:(UIButton *)sender;@end
//移动方法- (IBAction)move:(UIButton *)sender { //设置动画 [UIView animateWithDuration:0.7 animations:^{ //1)获取图片原始frame CGRect orginFrame = self.btnImg.frame; //根据tag判断当前是那个按钮 switch (sender.tag) { case 10: orginFrame.origin.y-=10; break; case 20: orginFrame.origin.x-=10; break; case 30: orginFrame.origin.y+=10; break; case 40: orginFrame.origin.x+=10; break; } self.btnImg.frame = orginFrame; }];}
移动方法主要是通过图片按钮的frame.origin来改变其X和Y轴的坐标实现
frame.origin是CGPoint结构体如下
struct CGPoint {
CGFloat x;
CGFloat y;
};
//放大、缩小方法- (IBAction)scale:(UIButton *)sender { //设置动画 [UIView animateWithDuration:0.7 animations:^{ //1)获取原始图片大小 CGRect originFrame = self.btnImg.frame; switch (sender.tag) { case 100: originFrame.size.width+=10; originFrame.size.height+=10; break; case 200: originFrame.size.width-=10; originFrame.size.height-=10; break; } self.btnImg.frame = originFrame; }];}
放大、缩小通过图片按钮的frame.size改变其width和height大小实现。
frame.size也是个结构体如下
struct CGSize {
CGFloat width;
CGFloat height;
};
//旋转- (IBAction)rotate:(UIButton *)sender { CGFloat angle = (sender.tag) ? M_2_PI : -M_2_PI; self.btnImg.transform = CGAffineTransformRotate(self.btnImg.transform, angle);}
旋转是改变其角度,设置旋转按钮的tag分别为1和0,通过耳目运算符获得改变的角度大小,然后通过CGAffineTransformRotate(self.btnImg.transform, angle)进行改变。
此方法第一个参数为基于什么位置进行改变,第二个参数是旋转的角度大小。
按钮操作素材
1 0
- ios学习之个人笔记(按钮操作)
- Bootstrap3 按钮改进之个人学习笔记
- iOS学习之个人笔记(应用管理)
- IOS-0811按钮操作(笔记)
- 【个人学习笔记7之--联接与集合操作】
- 个人学习笔记7之--联接与集合操作
- ios学习之个人笔记(超级猜图)
- ios学习笔记之八--按钮控制图片放大缩小
- 个人IOS学习笔记(基础)
- 【个人笔记】SIPp操作&学习--第二天
- iOS: 学习笔记, 动态添加按钮
- iOS学习笔记--封装倒计时按钮
- 【初学】iOS学习笔记-本地化之Plist文件读写操作
- iOS学习笔记之TableViewCell右侧滑动多项操作
- ios学习笔记之三- iPhone模拟器基本操作
- ios学习笔记之文件操作(NSFileManager)
- QT学习之QPushButton,按钮操作。
- IOS学习笔记(三)之UIView的标签(UILabel)与按钮(UIButton)
- shell调用python
- 1019. 数字黑洞 (20)
- The path "/usr/src/linux/include" is not an existing directory.解决方式
- Marklogic学习 由浅入深(1)—— 初识
- nyoj unlucky number 1184 (**打表**)
- ios学习之个人笔记(按钮操作)
- Activity 生命周期回顾 onSaveInstanceState()
- CSS基础学习十八:CSS布局之浮动
- 手动安装liberty版本openstack环境(allinone)---安装glance
- bzoj-3144 切糕
- HDU 2041 超级楼梯
- hdoj 5578 Friendship of Frog 【水题】
- C++类的保护成员学习笔记 http://blog.csdn.net/qhs1573/article/details/14109463
- effective c++为异常安全而努力是值得的(1)