0

我使用自動佈局,並設置了將空間設置爲超級查看(常量0),將空間拖到超級查看(常量0)以及水平居中以在表格視圖中超視圖的選項。表格視圖在重新定位後左右移動

即使從橫向模式返回時,表格視圖變得可移動,您可以拖動它,但我似乎沒有將其附加到超級視圖的邊緣,並且似乎會發生這種情況,因爲表格視圖更寬在橫向模式下,當它回到縱向模式時,桌子視圖右側留有一些空白空間,以填充空間不再需要。

我把這個代碼在每一個重新定位:

- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation 
{ 
    [General addLeftRightConstraintsToView:_detail1TableView inRelationToSuperview:self.navigationController.view]; 
} 

這是一個類的方法我使用更新佈局約束:

+ (void)addLeftRightConstraintsToView:(UIView *)view inRelationToSuperview:(UIView *)superview 
{ 

    // Left Space to Superview 
    NSLayoutConstraint *leftSpaceConstraint = 
    [NSLayoutConstraint constraintWithItem:view 
          attribute:NSLayoutAttributeLeft 
          relatedBy:NSLayoutRelationEqual 
           toItem:superview 
          attribute:NSLayoutAttributeLeft 
          multiplier:1.0 
           constant:0.0]; 

    // Right Space to Superview 
    NSLayoutConstraint *rightSpaceConstraint = 
    [NSLayoutConstraint constraintWithItem:view 
          attribute:NSLayoutAttributeRight 
          relatedBy:NSLayoutRelationEqual 
           toItem:superview 
          attribute:NSLayoutAttributeRight 
          multiplier:1.0 
           constant:0.0]; 

    [superview addConstraint:leftSpaceConstraint]; 
    [superview addConstraint:rightSpaceConstraint]; 

} 

任何想法?

回答

0

這工作:

- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation 
{ 
    [_details2TableView reloadData]; 
}