当前位置: 首页 > news >正文

检查网站死链接在线股票交易网站开发

检查网站死链接,在线股票交易网站开发,wordpress模板小说,wordpress主题应该怎么添加IOS#xff1a;屏幕旋转与Transform iTouch#xff0c;iPhone#xff0c;iPad设置都是支持旋转的#xff0c;如果我们的程序能够根据不同的方向做出不同的布局#xff0c;体验会更好。 如何设置程序支持旋转呢#xff0c;通常我们会在程序的info.plist中进行设置Supporte…IOS屏幕旋转与Transform     iTouchiPhoneiPad设置都是支持旋转的如果我们的程序能够根据不同的方向做出不同的布局体验会更好。   如何设置程序支持旋转呢通常我们会在程序的info.plist中进行设置Supported interface orientations添加我们程序要支持的方向而且程序里面每个viewController也有方法   supportedInterfaceOrientations(6.0及以后)   shouldAutorotateToInterfaceOrientation(6.0之前的系统)   通过viewController的这些方法我们可以做到更小粒度的旋转控制如程序中仅仅允许个别界面旋转。   一、屏幕旋转背后到底做了什么呢   下面我们看个简单的例子用xcode新建一个默认的单视图工程然后在对应viewController的响应旋转后的函数中输出一下当前view的信息代码如下 SvRotateViewController // // SvRotateViewController.m // SvRotateByTransform // // Created by maple on 4/21/13. // Copyright (c) 2013 maple. All rights reserved. //#import SvRotateViewController.hinterface SvRotateViewController ()endimplementation SvRotateViewController- (void)viewDidLoad {[super viewDidLoad];// Do any additional setup after loading the view, typically from a nib.self.view.backgroundColor [UIColor grayColor]; }- (void)didReceiveMemoryWarning {[super didReceiveMemoryWarning];// Dispose of any resources that can be recreated. }- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {return YES; }- (BOOL)shouldAutorotate {return YES; }- (NSUInteger)supportedInterfaceOrientations {return UIInterfaceOrientationMaskAll; }- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration {NSLog(UIViewController will rotate to Orientation: %d, toInterfaceOrientation); }- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation {NSLog(did rotated to new Orientation, view Information %, self.view); }end   查看代码我们可以发现我们的viewController支持四个方向然后在旋转完成的didRotateFromInterfaceOrientation函数中打印了self.view的信息旋转一圈我们可以看到如下输出   设备的初始方向是UIInterfaceOrientationPortrait的然后顺时针依次经过LandscapeLeftPortraitUpsideDownLandscapeRight最后再回到UIInterfaceOrientationPortrait方向。仔细看的话我们会发现在旋转的过程中除了frame之外Transform也在一直变化。观察frame发现它的变化应该是由于系统的状态栏引起的。于是将系统状态栏隐藏掉在输出发现frame果然不再变化。因此我们可以怀疑屏幕旋转是通过变化Transform实现的。   二、什么是Transform   Transform(变化矩阵)是一种3×3的矩阵如下图所示   通过这个矩阵我们可以对一个坐标系统进行缩放平移旋转以及这两者的任意组着操作。而且矩阵的操作不具备交换律即矩阵的操作的顺序不同会导致不同的结果。UIView有个transform的属性通过设置该属性我们可以实现调整该view在其superView中的大小和位置。   矩阵实现坐标变化背后的数学知识   设xy分别代表在原坐标系统中的位置xy代表通过矩阵变化以后在新的系统中的位置。其中式1就是矩阵变化的公式对式1进行展开以后就可以得到式2。从式2我们可以清楚的看到xy到xy的变化关系。   1当cbtxty都为零时x axy by即ad就分别代表代表xy方向上放大的比例当ad都为1时x xy y这个时候这个矩阵也就是传说中的CGAffineTransformIdentity(标准矩阵)。   2当ad为1cb为零的时候x x txy y ty即txty分别代表xy方向上的平移距离。   3前面两种情况就可以实现缩放和平移了那么旋转如何表示呢   假设不做平移和缩放操作那么从原坐标系中的一点(xy)旋转α°以后到了新的坐标系中的一点(xy)那么旋转矩阵如下      展开以后就是x xcosα - ysinαy xsinα ycosα     实际应用中我们将这些变化综合起来即可完成所有二维的矩阵变化。现在我们在回过头来看看前面设备旋转时的输出当设备位于Portrait的时候由于矩阵是标准矩阵所以没有进行打印。当转到UIInterfaceOrientationLandscapeLeft方向的时候我们的设备是顺时针转了90°(逆时针为正顺时针为负)这个时候矩阵应该是cos-90°sin-90°-sin-90°cos-90°txty由于未进行平移操作所以txty都为0刚好可以跟我们控制台输出UIView: 0x8075390; frame (0 0; 320 480); transform [0, -1, 1, 0, 0, 0]; autoresize WH; layer CALayer: 0x8074980一致。观察其他两个方向的输出发现结果均和分析一致。   由此可以发现屏幕旋转其实就是通过view的矩阵变化实现当设备监测到旋转的时候会通知当前程序当前程序再通知程序中的windowwindow会通知它的rootViewController的rootViewController对其view的transform进行设置最终完成旋转。   如果我们直接将一个view添加到window上系统将不会帮助我们完成旋操作这个时候我们就需要自己设置该view的transform来实现旋转了。这种情况虽然比较少但是也存在的例如现在很多App做的利用状态栏进行消息提示的功能就是利用自己创建window并且自己设置transform来完成旋转支持的下一篇博客会介绍如何实现这种消息通知。     注转载请注明出处欢迎大家加我QQ 1592232964一起讨论共同进步。转载于:https://www.cnblogs.com/smileEvday/archive/2013/04/23/Rotate1.html
http://wiki.neutronadmin.com/news/177839/

相关文章:

  • 315网站专题怎么做互联网站从事登载新闻业务管理暂行规定
  • mysql同一数据库放多少个网站表微网站用什么做的
  • 需要个网站淮南城乡建设局网站
  • 福州百度做网站多少钱做教育业网站
  • 企业网站开发信息html自动播放视频
  • asp网站如何打开受欢迎的邢台做网站
  • 国内 上市网站建设公司排名合肥做拼拼团网站的公司
  • 网站魔板大全昆明做凡科网站
  • 分类网站怎么做项目外贸网站模板免费
  • 曼朗策划网站建设商场设计费
  • 百度网站推广一年多少钱自己开发软件大概需要多少钱
  • 广州网站建设市场西宁网站建设公司排行
  • seo是什么品牌seo快速排名服务
  • 广州微信网站开发公司企业网站搭建新感觉建站
  • 池州市建设工程质量安全监督局网站自家电脑做网站服务器w7花生壳
  • 做淘宝客需要网站吗杭州网站建设响应式
  • 护肤品 网站建设策划书合肥广告牌制作公司
  • 广州骏域网站建设专家电子商务公司属于什么行业
  • 欧美色影网站经典logo设计案例分析
  • 速升网站网站设计需要学什么软件
  • php违章网站开发购物网站开发需求分析
  • 望城区网站建设wordpress 微站
  • 网站建设商务代表工作总结生态建筑建设公司网站
  • 网站空间是不是服务器网站建设公司 合肥
  • 如何让域名跳转网站网站开发按几年摊销
  • 风铃网站代做潍坊网站搜索引擎优化
  • 电子商务企业网站的推广方式加油站网站建设
  • 云南网站营销网站推广策划的思路包括哪些
  • 专做零食的网站C 如何做简易网站
  • 微信 wordpress搜索seo网站推广的目的包括哪个方面