ios 视图的旋转及应用
有时候,需要做出如下图所示的效果,这就需要用到视图的旋转了

1.首先将旋转的值由角度转换为弧度:
#define degreesToRadinas(x) (M_PI * (x)/180.0)
注:M_PI是ios内置的常量,值为:
3.14159265358979323846264338327950288
2.每一个视图都有一个transform属性,默认为:
CGAffineTransformIdentity
3.使一个视图旋转90度:
_display.transform= CGAffineTransformIdentity;//重置视图角度旋转为默认值
_display.transform= CGAffineTransformMakeRotation(degreesToRadinas(90));//旋转90度(将90度转换为弧度)
注:_display = [UIButtonbuttonWithType:UIButtonTypeRoundedRect];
示例代码
a、视图旋转
UIView * view = [[UIView alloc] initWithFrame:CGRectMake(, , , )];
view.backgroundColor = [UIColor yellowColor];
view.clipsToBounds = YES; view.transform = CGAffineTransformIdentity;
view.transform = CGAffineTransformMakeRotation(degreeToRadinas());
[self.view addSubview:view];
[view release];
b、视图中,label旋转
UIView * view = [[UIView alloc] initWithFrame:CGRectMake(, , , )];
view.backgroundColor = [UIColor yellowColor];
view.clipsToBounds = YES;
[self.view addSubview:view]; UILabel * label = [[UILabel alloc] initWithFrame:CGRectMake(, , , )];
label.text = @"倾斜";
label.backgroundColor = [UIColor greenColor];
label.transform = CGAffineTransformIdentity;
label.transform = CGAffineTransformMakeRotation(degreeToRadinas(-));
[view addSubview:label]; [label release];
[view release];
注:
clipsToBounds属性
取值:BOOL(YES/NO)
作用:决定了子视图的显示范围。具体的说,就是当取值为YES时,剪裁超出父视图范围的子视图部分;当取值为NO时,不剪裁子视图。默认值为NO。
ios 视图的旋转及应用的更多相关文章
- iOS 视图控制器转场详解
iOS 视图控制器转场详解 前言的前言 唐巧前辈在微信公众号「iOSDevTips」以及其博客上推送了我的文章后,我的 Github 各项指标有了大幅度的增长,多谢唐巧前辈的推荐.有些人问我相关的问题 ...
- (转)ios限制控制器旋转
iOS屏幕旋转控制 iOS屏幕旋转控制(iOS6之后) iOS6之前,子控制器只要覆盖父类的shouldAutorotateToInterfaceOrientation:方法就能单独控制某 ...
- View Programming Guide for iOS ---- iOS 视图编程指南(五)---Animations
Animations Animations provide fluid visual transitions between different states of your user inter ...
- View Programming Guide for iOS ---- iOS 视图编程指南(四)---Views
Views Because view objects are the main way your application interacts with the user, they have many ...
- View Programming Guide for iOS ---- iOS 视图编程指南(二)---View and Window Architecture
View and Window Architecture 视图和窗口架构 Views and windows present your application’s user interface and ...
- iOS实现屏幕旋转
iOS实现屏幕旋转有两种方式 1. 应用本身支持 2. 手动旋转UIView (这种方式我没找到旋转 系统控件的方法 如:键盘.导航.UIAlertView) 如果你只是要把竖屏的播放器,做成支持横屏 ...
- iOS视图控制器的生命周期
今天面试有一道面试题因为回答不好,因为也不经常涉及所以有点模糊,我选择了最保守的回答,没有展开写出我对这个问题的理解. 问题:IOS 开发 loadView 和 viewDidLoad 的区别? 经过 ...
- iOS视图控制对象生命周期
iOS视图控制对象生命周期-init.viewDidLoad.viewWillAppear.viewDidAppear.viewWillDisappear.viewDidDisappear的区别及用途 ...
- IOS 视图控制对象生命周期-init、viewDidLoad、viewWillAppear、viewDidAppear、viewWillDisappear等的区别及用途
iOS视图控制对象生命周期-init.viewDidLoad.viewWillAppear.viewDidAppear.viewWillDisappear.viewDidDisappear的区别及用途 ...
随机推荐
- 简单解决 ATL:CString WTL:CString 冲突
//stdafx.h #include <atlbase.h> #include <atlstr.h> #include <atlapp.h> extern CAp ...
- sys.modules[__name__]
A way to get a handle to the current running module in Python: import sys module = sys.modules[__nam ...
- iOS中block 静态全局局部变量block变量,以及对象,详解!
//最近总是犯迷糊,关于block对外部变量的引用,今天有时间就写了一下,加深自己的理解,巩固基础知识 1 #import <Foundation/Foundation.h> ; int ...
- BZOJ 4491: 我也不知道题目名字是什么
4491: 我也不知道题目名字是什么 Time Limit: 10 Sec Memory Limit: 512 MBSubmit: 278 Solved: 154[Submit][Status][ ...
- JS与验证控件结合验证
原文发布时间为:2010-05-14 -- 来源于本人的百度文章 [由搬家工具导入] 把BUTTOn中 的return CheckFive()去 掉 .. 放 到 <Form id=" ...
- ToolTip特效 JavaScript 盗取厦门人才网的特效
原文发布时间为:2009-05-17 -- 来源于本人的百度文章 [由搬家工具导入] 源代码:http://www.xmaspx.com/Services/FileAttachment.ashx?At ...
- js scrollTop, 滚动条操作
设置页面加载时滚动条自动滚到底的方法: jQuery: 复制代码 代码如下: $(function(){ var h = $(document).height()-$(window).height() ...
- [原创] 树莓派个人实测 Q&A(最新修改使用windows连接远程桌面)
原文出处:http://www.eeboard.com/bbs/thread-5191-1-1.html 这篇帖子我打算用Q&A的方式来编写,这样大家更容易一目了然的看明整个帖子的内容,层次分 ...
- Javascript中递归的调用
递归函数就是调用自身,如下所示: function factorial(num){ if(num<=1){ return 1; }else{ return num*factorial(num-1 ...
- SQLite中特殊的INSERT语句
SQLite中特殊的INSERT语句 在SQLite中,INSERT是基本语句,用来向表中插入数据.但是当表中存在字段存在唯一.非空.检查.主键等约束时,插入的数据很容易和约束冲突,造成插入操作失 ...