菱形开合的实现 IOS
实现的原理: 利用了自动布局和形变
核心代码块:
@implementation JHMainView
{
UILabel *label1,*label2,*label3,*label4;
UIButton *btn;
}
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
btn = [[UIButton alloc]initWithFrame:CGRectMake(100, 120, 120, 120)];
btn.transform = CGAffineTransformRotate(btn.transform, M_PI_4);
[btn addTarget:self action:@selector(btnClick:)forControlEvents:UIControlEventTouchUpInside];
btn.autoresizesSubviews = YES;
//btn.backgroundColor = [UIColor cyanColor];
label1 = [[UILabel alloc]initWithFrame:CGRectMake(0, 0, 60, 60)];
label1.backgroundColor = [UIColor orangeColor];
label2 = [[UILabel alloc]initWithFrame:CGRectMake(btn.bounds.size.width/2, 0, 60, 60)];
label2.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin;
label2.backgroundColor = [UIColor blackColor];
label3 = [[UILabel alloc]initWithFrame:CGRectMake(0, btn.bounds.size.height/2, 60, 60)];
label3.backgroundColor = [UIColor blueColor];
label3.autoresizingMask = UIViewAutoresizingFlexibleTopMargin;
label4 = [[UILabel alloc]initWithFrame:CGRectMake(btn.bounds.size.width/2, btn.bounds.size.height/2, 60, 60)];
label4.autoresizingMask = UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleLeftMargin;
label4.backgroundColor = [UIColor purpleColor];
[btn addSubview:label1];
[btn addSubview:label2];
[btn addSubview:label3];
[btn addSubview:label4];
[self addSubview:btn];
}
return self;
}
- (void)btnClick:(UIButton *)sender
{
static int i=1 ;
btn.center = btn.center;
if(i%2)
{
btn.bounds = CGRectMake(0, 0, 180, 180);
}
else
{
btn.bounds = CGRectMake(0, 0, 120, 120);
}
i++;
}
@end
转载于:https://www.cnblogs.com/Ohero/p/3924317.html
菱形开合的实现 IOS相关推荐
- 剑网三谜题终于揭开,药宗四系开合得当,有输出有治疗
大家已经过了很长时间的剑网,三新宗门终于在这个时候得到了答案,那就是我们所期待的剪影答案,那就是药宗.其实这个时候大家都知道了,剑网三不只有七秀,还有耀宗这样一个强大的门派虽然新出我们也应该去期待他日 ...
- 一直跳出来 visual_只练开合跳一个动作,会瘦吗?
身高:190cm,体重:107kg. 开合跳:150个/组,每天做10组.每组间休息10秒. 3月1日体重107kg,4月1日减到101.5kg. 注意:每周练六天,三餐正常吃,主食减少. 你相信开合 ...
- python miio 连接小米网关_小米门窗传感器2本质是感应门窗开合的,结果更好用的却是光线传感器...
"天下无贼"是每个人的愿景,但是,光有愿望是不行的,得有实实在在的安防措施才行,于是,大街小巷装上了高清摄像头,几乎所有小区和单位都设有门岗,就连支付宝.微信这些都有盗刷百分之百赔 ...
- 307 跳转会携带请求方法吗_瘦得最快的有氧运动,你小时候常玩|跳绳|开合跳|有氧运动|快走|减肥|燃脂...
请问你是不是这样的,每当看到某个人暴瘦20斤时,就血书求瘦身方法,然后随手收藏一波,再也没用过. 每次都是用工作忙没时间,或者去健身房太费钱来安慰自己.其实,还有一个几乎0成本又很难停下来的方法-跳绳 ...
- 外置罗氏线圈和开合式互感器的导轨式多功能电力仪表
● 概述 外置罗氏线圈和开合式互感器的导轨式多功能电力仪表,它集成全部电力参数的测量(如单相或者三相的电流.电压.有功功率.无功功率.视在功率.频率.功率因数)以及电能监测和考核管理.同时它具有多种外 ...
- c语言控制继电器开合程序,求STC89c52单片机用倒计时控制继电器开、合的C语言程序,晶振12.000...
匿名用户 1级 2014-05-05 回答 这是数字时钟的C程序,如果要实现对继电器的开关控制,就可以在主程序中加入对时间的控制.也就是说,在你定义的某个时间上,继电器会实现开或者合的状态!由于单片机 ...
- python miio 连接小米网关_时隔五年小米门窗传感器重磅升级开合光线检测二合一 仅49元...
"天下无贼"是每个人的愿景,但是,光有愿望是不行的,得有实实在在的安防措施才行,于是,大街小巷装上了高清摄像头,几乎所有小区和单位都设有门岗,就连支付宝.微信这些都有盗刷百分之百赔 ...
- 雨伞连线题php fgetcsv,如何使用纯CSS实现一把雨伞开合的动画效果(附源码)
本篇文章给大家带来的内容是关于如何使用纯CSS实现一把雨伞开合的动画效果(附源码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 效果预览 源代码下载 https://github. ...
- 不锈钢离合销 不锈钢门锁固定销 门锁开合离合销 不锈钢调节销钉
不锈钢离合销 不锈钢门锁固定销 门锁开合离合销 不锈钢调节销钉的相关属性: 1.规格是:3*15 2.作用方式是:连接式 3.螺钉直径有:3MM 4.螺纹规格为:3 5.材质是:SUS303 6.头型 ...
最新文章
- C++简单使用Jsoncpp来读取写入json文件
- GTX1080 LetNet-5 CPU GPU cuDNN5.1 时间对比
- 合理利用延迟初始化优化 Spring Boot
- python统计文章单词次数
- ai模仿声音软件_如何开发人工智能类的软件?人工智能让我们的生活更加便捷!...
- python3中的dict循环性能对比
- Redis 为什么是单线程的?
- 光伏电站清扫机器人_轻型光伏电站清扫机器人的制作方法
- 阿里云高级技术专家赵伟:安全加速 SCDN 设计与案例
- 47 CO配置-控制-利润中心会计-设置实际数据的控制参数
- python设置黑色主题_Python背景色与语法高亮主题配置
- html 怎么转换,html怎么转换成word?
- 壳浏览器 android,QQ浏览器2020安卓版
- Python中过滤列表中全部奇数
- 全国计算机高新技术作用,全国计算机高新技术考试证书作用是什么?
- 磁盘分区格式(MBR分区和GPT分区)和启动引导模式(Legacy和UEFI)的关系
- 如何解决中小企业融资难问题
- 华为设备ENSP基本命令简介
- 洛谷P1339 Heat Wave G(最短路,图论)
- dxgmms2.sys蓝屏的三种解决方法
热门文章
- PPT|工业互联网关键技术专利态势
- 中国独角兽企业总榜发布:百亿超级独角兽达13家(附榜单)
- 英特尔发布全新CPU架构 称摩尔定律未死 中国研究院迎20周年
- 刘锋:互联网左右大脑结构与钱学森开放复杂巨系统
- 集成电路:迎国产替代浪潮,设计领域机会凸显
- 基于互联网大脑架构的腾讯未来趋势分析[系列1]
- GoogleNet是怎么理解图像的?谷歌大神教你读懂「神经特征可视化」
- Spring Framework 6 将采用 Java 17,是时候将你的应用升级了
- Hey!你的 CSDN 年度报告已出炉,请查收~
- 还在做Excel分析师?HR:对不起,我们还要求会Python!