AutoresizingMask - 修正底部位置

时间:2014-08-13 12:36:09

标签: ios objective-c

我无法让AutoresizingMasks工作。

我想要的是一个视图,它包含另一个视图(UITextView),它在调整大小后与第一个视图的底部对齐。

我有一个看起来像这样的父UIView:

UIView *parentView = [[UIView alloc] initWithFrame:CGRectMake(0,0,320,568)];
[parentView setAutoresizesSubviews:YES];

然后我有一个看起来像这样的子视图:

UITextView *childView = [[UITextView alloc] initWithFrame:CGRectMake(10, 400, 300, 10)];
[childView setAutoresizingMask:UIViewAutoresizingFlexibleTopMargin|UIViewAutoresizingFlexibleHeight];

现在,我添加文字并调整视图大小:

[childView setText:@"A long text that's bigger than the view."];
[childView sizeToFit];

然而,childView向下而不是向上增长。

如何将childView锚定到底部?我错过了什么? :)

我没有使用故事板或任何其他xib / nib文件。只是纯粹的代码。

1 个答案:

答案 0 :(得分:0)

自动调整只有在parentView的尺寸发生变化时才有效 而且他们不记得其子视图的 frame

因此,您必须在frame之后手动调整childView的{​​{1}}:

sizeToFit