iphone - 如何相对于屏幕 iPhone 的一侧锚定 View

标签 iphone ios core-graphics cgaffinetransform autoresizingmask

我正在创建一个直接在代码中创建布局的 iOS 应用程序。我习惯使用 xib,但这不是这个项目的选项。我不知道如何定位固定在屏幕底部/侧面的元素。我正在寻找的解决方案会将其纵向放置在底部,但在旋转时会将其固定在右侧(非常类似于底部栏在相机应用程序中的工作方式)。纵向正常在屏幕底部,问题出在旋转

此外,我正在为 iOS 5 构建,因此我需要一个不使用自动布局的解决方案。

这是我到目前为止在旋转到横向时所做的代码。我的想法是旋转 90(这是有效的)然后使用某种 mask 将其固定在左侧。我哪里错了?甚至可以锚定这样的对象吗??

myView.autoresizingMask = UIViewAutoresizingFlexibleHeight|UIViewAutoresizingFlexibleLeftMargin;


CGAffineTransform rotate90 = CGAffineTransformMakeRotation(degreesToRadians(-90));

myView.transform = rotate90;

Example Sketch

最佳答案

不要处理酒吧,而是处理酒吧内的 View 。

试试这个:

1) 使用以下方法防止您的应用自动旋转:

//For iOS 5 and lower
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
    return NO;
}

//For iOS 6 and upper
- (BOOL)shouldAutorotate {
    return NO;
}

2) 旋转栏内的 View 而不是栏本身

希望对你有所帮助。

关于iphone - 如何相对于屏幕 iPhone 的一侧锚定 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13292369/

相关文章:

ios - Core Graphics 栅格数据未从内存中释放

ios - 使用 CLPlacemark、administrativeArea、iOS6/iOS7 改变内容

ios - 绘制自定义 CGContextRef - 大于框架?

iphone - 类属性 mVar 和实例变量 self.mVar 的区别

iphone - 使用 nib 自定义单元格和自动布局滚动跳跃(ios 8 swift - UITableview)

ios - 应用程序崩溃,因为启动时 launchOptions 为 nil

ios - 安全销毁和重新创建单例

objective-c - CoreGraphics 填充路径和描边路径

iphone - 带有文本笔画/轮廓的 UIButton

iphone - 直接发布到应用程序的墙上