我正在使用LLSimpleCamera处理iOS应用。
我尝试做的是当我以横向方式定位相机时,图标和按钮也会旋转。除了一部分,我已经完成了工作!
您可以在此处看到该按钮同时包含imageView和textLabel(' Off'):
当我旋转手机时,关闭变为省略号。 " ...":
在纵向方向,它看起来很好:
我正确旋转了其他按钮和标签,而不是这一个。我怀疑由于flash图像和文本是ONE按钮的一部分,它会导致一些问题吗?
相关代码:
- (void)viewDidLoad {
[super viewDidLoad];
self.hasShownConsentAlert = NO;
self.flashButton.imageView.contentMode = UIViewContentModeScaleAspectFit;
UIImage *flashImage = [UIImage imageNamed:@"CameraFlashIcon"];
[self.flashButton setImage:[flashImage imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate] forState:UIControlStateNormal];
[self.flashButton.imageView setTintColor:[UIColor whiteColor]];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(orientationChanged:) name:UIDeviceOrientationDidChangeNotification object:nil];
}
...
- (void) adjustViewsForOrientation:(UIDeviceOrientation) orientation {
CABasicAnimation *rotationAnimation = [CABasicAnimation animationWithKeyPath:@"transform.rotation.z"];
switch (orientation) {
case UIInterfaceOrientationPortrait: {
....
}
break;
case UIInterfaceOrientationPortraitUpsideDown: {
....
}
break;
case UIInterfaceOrientationLandscapeLeft: {
self.flashButton.imageView.transform = CGAffineTransformMakeRotation(-M_PI_2);
self.flashButton.titleLabel.transform = CGAffineTransformMakeRotation(-M_PI_2);
...
我也尝试缩小字体,这使得省略号SHRINK,但这个词仍然没有出现。
我最大的问题是:为什么会变成省略号?
修改
感谢@sschale,我知道它为什么会变成省略号。
我的代码没有真正改变。新图像更新:
现在有没有办法格式化文本,以便整个文本适合?更改高度(44),字体大小,内容拥抱优先级/内容压缩阻力优先没有帮助。
答案 0 :(得分:1)
UILabel
的内在高度和宽度为text
。删除具体的集合属性,它应该处理其余的事情。因为它改变了方向,所以初始约束会起作用,但如果你删除它们,它会自动修复它们。