【问题标题】:Proper AutoresizingMask适当的 AutoresizingMask
【发布时间】:2023-06-06 16:11:01
【问题描述】:

我有一个视图出现在其父视图纵向模式的中心,我应该使用什么 autoresizemask 以便它在横向模式下也出现在中心。它的大小应该保持不变。我只是希望它的原点应该在该点自动移动,以便它出现在中心。有什么帮助吗?

我给了

[parentView setAutoResizesSubview:YES];

parentView.autoresizingMask = UIViewAutoresizingFlexibleHeight|UIViewAutoresizingFlexibleWidth;

【问题讨论】:

    标签: ios uiview uiinterfaceorientation autoresizingmask


    【解决方案1】:
    // horizontal
    childView.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin;
    
    // vertical
    childView.autoresizingMask = UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleBottomMargin;
    
    // both
    childView.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleBottomMargin;
    

    【讨论】:

      【解决方案2】:

      斯威夫特 3:

      childView.translatesAutoresizingMaskIntoConstraints = false
      
      childView.autoresizingMask = [.flexibleTopMargin, .flexibleBottomMargin, .flexibleLeftMargin, .flexibleRightMargin]
      

      【讨论】:

        【解决方案3】:
        If you are using swift:
        // horizontal
        childView.autoresizingMask = [.flexibleLeftMargin, .flexibleRightMargin]
        // vertical
        childView.autoresizingMask = [.flexibleTopMargin, .flexibleBottomMargin]
        // both
        childView.autoresizingMask = [.flexibleLeftMargin, .flexibleRightMargin, .flexibleTopMargin, .flexibleBottomMargin]
        

        【讨论】: