iOS的自动版式没有真正工作嵌入到滚动型

问题描述:

意见

我想嵌入的观点相互转化(在目前的情况下,进入滚动型允许比显示屏幕的尺寸高含量)和使用的iOS 6.0的自动版式功能,在为了避免不断计算内容大小。iOS的自动版式没有真正工作嵌入到滚动型

我有以下的ViewController的看法,包含一个UIScrollView:

enter image description here

我想显示在这个滚动视图我ChildVC的观点:

请注意标签是多和含有一个'很多'的文本,还有自动布局约束被定义(特别是大于或等于高度属性)。

enter image description here

我创建childVC并经由下面的代码添加到主VC的视图:

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    // Do any additional setup after loading the view, typically from a nib. 

    childVC = [[ChildVC alloc] initWithNibName:@"ChildVC" bundle:nil];  

    self.myScrollView.translatesAutoresizingMaskIntoConstraints = NO; 
    childVC.view.translatesAutoresizingMaskIntoConstraints = NO; 

    [self.myScrollView addSubview:childVC.view]; 

    NSDictionary *viewsDictionary = @{ @"subView" : childVC.view}; 

    NSString* constr = [NSString stringWithFormat:@"|-0-[subView(%f)]-0-|", self.myScrollView.frame.size.width];  
    [self.myScrollView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:constr options:0 metrics: 0 views:viewsDictionary]]; 

    [self.myScrollView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-0-[subView]-(>=0)-|" options:0 metrics: 0 views:viewsDictionary]]; 
} 

用于内容观看的约束(我想将是childVC的视图)是代码中设置的唯一东西,因为我只想要一个垂直滚动条,我希望子视图的内容(水平)缩小以显示在滚动查看器中。

而且我的输出是这样的:

enter image description here

的UI显示,收缩但我的标签不调整垂直因此它不会显示整个文本:(

我试图设置高达

translatesAutoresizingMaskIntoConstraints到标签在这里和那里没有任何成功。我会很感激的任何帮助,因为我有个挣扎是天现在:/

我个人认为,这些限制和自动布局功能,只是不总是精确地工作,因为我们希望他们。 (特别是在不同的屏幕尺寸上)。

所以我通常会添加一些代码行数在viewDidLoad方法由几个像素左右移动某些物体。您也可以更改尺寸等。

从字面上看这样一个简单的动作做的伎俩,而用户注意到任何动画:

object_name.frame = CGRectOffset(object_name.frame, 0, -40.0f);