0

我想在 iPhone 中使用自动调整大小的蒙版来调整横向和纵向模式的视图。问题是当我从界面生成器应用宽度弹簧时,按钮会按比例改变其大小。但是当我通过代码应用相同的弹簧时,即

 [self.view setAutoresizesSubviews:YES]; 
 [testButton setAutoresizingMask:UIViewAutoresizingNone];
 [testButton setAutoresizingMask:UIViewAutoresizingFlexibleWidth];

该按钮不显示相同的行为。

从界面生成器应用于按钮的自动调整大小:原始按钮大小:120 宽和 37 高横向模式按钮:按比例更改大小

代码中按钮的自动调整大小:
原始按钮大小:120 宽和 37 高
横向模式按钮:通过在纵向和横向模式下保持相同的左右边距来更改大小。

从代码应用的掩码似乎无法正常工作,因为从代码创建的按钮的大小变得更大。

我的视图很复杂,这就是为什么我不想在视图上设置每个子视图的框架。

有同样问题的人!!!

4

2 回答 2

1

顺便说一句,我已经解决了我的问题。与界面生成器的链接无关。实际上,在没有界面构建器的情况下创建视图时,如果您希望子视图自动调整大小;您必须使用按位或连接器将弹簧和支柱设置在单行中。我用于调整视图大小的代码是:

[appLogo setAutoresizingMask: UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleBottomMargin | UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleLeftMargin];
于 2010-08-30T03:55:29.860 回答
0

检查 2 件事。1. IBOutlet 的连接 2. 还要检查您是否创建了您创建的视图的 IBOutlet 的@property。

希望这能解决问题。

于 2010-08-27T09:38:41.350 回答