Tag: 旋转

在iOS7中处理一个视图控制器的自动旋转

我已经阅读了很多答案,但我似乎无法在iOS7上自动运行。 我只需要一个视图控制器来旋转,所以我不想在我的Info.plist中设置旋转设置。 据我了解苹果的文档,一个单一的视图控制器可以覆盖全局旋转设置(从Info.plist)只需重写两个方法。 Info.plist设置为只允许肖像,我的视图控制器实现以下方法: – (NSUInteger)supportedInterfaceOrientations { NSLog(@"%s", __PRETTY_FUNCTION__); return UIInterfaceOrientationMaskAllButUpsideDown; } – (BOOL)shouldAutorotate { NSLog(@"%s", __PRETTY_FUNCTION__); return true; } 我看到这些旋转的NSLog语句,但没有旋转。 如果我使用正确的旋转设置来configurationInfo.plist,我的视图将会旋转,但是如果我尝试依赖视图控制器,则不会。 不知道是否重要,但我试图旋转的视图是从使用自动布局的.xib。 另外,我的ViewController是模态呈现,并包含在一个导航控制器。 我试过只是提出视图控制器本身,这是行不通的。 我也尝试添加一个类别到UINavigationController从它的topViewController获取它的自动旋转方向。

CABasicAnimation旋转返回到原来的位置

我旋转CALayer使用CABasicAnimation,并正常工作。 问题是,当我尝试旋转同一图层时,它将在旋转之前返回到其原始位置。 我预期的结果是,下一轮,它应该从结束的地方开始。 这是我的代码: CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@"transform.rotation"]; animation.fromValue = 0; animation.toValue = [NSNumber numberWithFloat:3.0]; animation.duration = 3.0; animation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]; animation.removedOnCompletion = NO; animation.fillMode = kCAFillModeForwards; animation.autoreverses = NO; [calayer addAnimation:animation forKey:@"rotate"]; 我的代码有什么缺失? 谢谢

如何在iOS上旋转90度的图像?

我想要做的是从我的相机拍摄快照,将其发送到服务器,然后服务器发送给我一个viewController的图像。 如果图像处于肖像模式,则图像在屏幕上显示效果良好,但是如果图像是在横向模式下拍摄的,则图像在屏幕上显示为拉伸(因为它会尝试以纵向模式显示!)。 我不知道如何解决这个问题,但我想一个解决scheme是首先检查图像是在纵向/横向模式,然后如果是在横向模式旋转90度,然后再显示在屏幕上。 那我怎么能这样做?

在layoutSubviews中旋转视图

背景和目标 目标:我想旋转并翻转一个UITextView 。 ( 为什么:看我以前的问题 ) 问题:如果我直接在UITextView上进行转换,文本布局会因某种未知的原因而变得混乱。 解决scheme:将UITextView放在UIView容器中,然后对容器执行转换。 新问题:旋转视图上的自动布局(或任何types的布局)成为主要的头痛问题 。 build议的解决scheme:使UIView的子类充当旋转和翻转的UIView的附加容器。 然后自动布局应该在这个自定义视图上工作。 目前的问题 它在第一次出现的时候都有效( UITextView有黄色背景): 但是当方向改变时,会发生以下情况(蓝色是IB中设置的子类UIView背景): 如果禁用了rotationView.addSubview(textView)行,那么旋转容器视图(红色)就可以重新定位,即使在方向更改时也是如此: 所以这个问题一定是关于我添加UITextView 。 但我该怎么做呢? 码 class MongolTextView: UIView { // properties var rotationView: UIView! var textView: UITextView! // This method gets called if you create the view in the Interface Builder required init(coder aDecoder: NSCoder) { super.init(coder: aDecoder) } […]

如何在iOS中处理不同的方向

补充 :你可以在github ios6rotations上访问这个项目 对不起,在iOS 6中提问有关屏幕旋转的问题,但这真的是一个痛苦的屁股..我仍然无法完全理解 – 由于某种原因,它在某些情况下行为不同。 我在testing应用程序中有以下简单的视图层次结构: 我试图达到的目的是 – 只将蓝色控制器保持在风景中,而红色控制器只能用于风景 。 我有这样的代码里面的UINavigationController的子类: @implementation CustomNavController – (BOOL)shouldAutorotate { return [[self.viewControllers lastObject] shouldAutorotate]; } – (NSUInteger)supportedInterfaceOrientations { return [[self.viewControllers lastObject] supportedInterfaceOrientations]; } – (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation { return [[self.viewControllers lastObject] preferredInterfaceOrientationForPresentation]; } @end 在我的蓝色控制器中我实现了这个: – (BOOL)shouldAutorotate { return YES; } – (NSUInteger)supportedInterfaceOrientations { return UIInterfaceOrientationMaskLandscape; } 而在红色的控制器中: – […]