我已经工作在自动定制的UIView和苹果已经很少在这说。更重要的是,基于SO反馈,苹果的文档在某些领域实际上是错误的。最后,即使有在Interface Builder和六个调整大小部件六项setAutoresizingMask:他们似乎并不关联的所有事情。例如,在IB设定宽度弹簧具有从旋转设备时autoresizingMask设置为UIViewAutoresizingFlexibleWidth不同的效果。

是否有良好的资源,了解在iPhone?

如何调整工作

修改

我了解基本概念苹果使用诸如contentMode,我已经通过UIView的文档阅读。我在寻找的东西在什么SDK中的可用编程方面更深入的什么IB设置做说明了一点。

有帮助吗?

解决方案

autoresizingMask设置为UIViewAutoresizingFlexibleWidth,相当于设置宽度弹簧,加上左边和在界面生成器右侧支柱(支柱意味着该边缘的的柔性)。如果你想复制的设置仅宽度春天,而不是左,右支柱的行为,你就必须设置autoresizingMaskUIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin

其他提示

我发现这个职位有助于理解的iOS自动尺寸调整。

http://www.techotopia.com/index.php/IOS_4_iPhone_Rotation,_View_Resizing_and_Layout_Handling

从苹果:

  

...通过组合中描述的常数指定该掩码的值   使用C位或运算符UIViewAutoresizing。结合这些   常量,可以指定该视图的尺寸要长或   收缩相对于上海华。此属性的默认值   是UIViewAutoresizingNone,这表明该视图不应   在所有的调整大小。

     

...例如,   假设该物业包括UIViewAutoresizingFlexibleWidth和   UIViewAutoresizingFlexibleRightMargin常量但<强>不包括   的UIViewAutoresizingFlexibleLeftMargin常数,因此表明   该视图的左边距的宽度是固定的但是视图的   宽度和右边距可以改变。因此,视图显示锚定到   它的父,而左侧两个视图宽度和间隙   到视图增加的右侧。

     

如果在自动调整行为不提供精确的布局,你   需要你的意见,你可以使用自定义容器视图和覆盖   其layoutSubviews方法来更精确地定位你的子视图。

所以,如果你想定位固定在顶部和它的父的右侧视图,你可能应用像一个面具:

[myView setAutoresizingMask:UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleBottomMargin];

上海华具有这样的参数为 contentMode autoresizesSubviews ,至极所有的 autoresizingMask 它的子视图的尺寸调整使得行为

读聚精会神 HTTP:// developer.apple.com/library/ios/#documentation/uikit/reference/UIView_Class/UIView/UIView.html

有关的记录,我划我的头一个小时,因为我的一个行的UILabel只是不会自动调整字体大小以适合宽度。最后,这并获得成功:

label.contentMode = UIViewContentModeScaleAspectFit;

我一派和似乎没有人阐明这个细节(大家告诉您标签应该是1行,集合adjustsFontSizeToFitWidth / minimumFontSize等)。 也许这属性的默认值更改?我在iOS 4.3。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top