他の多くのサブビューを含むビューがあります。これには、動的な高さを持つ UIWebView と、1 パーツあたり約 10 ピクセルで互いに垂直方向に固定されたいくつかのビューが含まれています。
スーパー ビューの制約 (detailsContainer) を次のように設定しようとしています。
NSLayoutConstraint *heightConstraint = [NSLayoutConstraint constraintWithItem:self.detailsContainerView
attribute:NSLayoutAttributeHeight
relatedBy:NSLayoutRelationEqual
toItem:nil
attribute:NSLayoutAttributeNotAnAttribute
multiplier:1.0
constant:9000];
heightConstraint.priority = UILayoutPriorityRequired;
[self.detailsContainerView addConstraint:heightConstraint];
ただし、他のすべてが正しく配置されているにもかかわらず、適切にサイズ変更されていないようです (ここでは実験として 9000 を使用)。何らかの理由でサブビューが切り取られます (clipToBounds が NO に設定されています)。
このビューの高さを変更する何かが他にあると思います (ただし、デバッガーで制約を破るものは見当たりません)。
ここにトレースがあります
[[UIWindow keyWindow] _autolayoutTrace]
*<UIWindow:0xcd9fd90> - AMBIGUOUS LAYOUT
| *<UILayoutContainerView:0x133834c0>
| | *<UINavigationTransitionView:0x133847c0>
| | | *<UIViewControllerWrapperView:0x14597730>
| | | | *<UIView:0x1339dbc0>
| | | | | *<UIScrollView:0x1339ce20>
| | | | | | *<PNDetailsContainerView:0x1339c9f0>
| | | | | | | *<PNProductDetailsContent:0x1339c5c0>
| | | | | | | | *<UIView:0x133bb8b0>
| | | | | | | | | *<UIScrollView:0x133a4be0>
| | | | | | | | | | *<UIView:0x133a4db0>
| | | | | | | | | | | <_UIPageViewControllerContentView:0xcb408f0>
| | | | | | | | | | | | <_UIQueuingScrollView:0x122a4a00>
| | | | | | | | | | | | | <UIView:0x10e88720>
| | | | | | | | | | | | | <UIView:0x10e887d0>
| | | | | | | | | | | | | | <UIView:0xcb406a0>
| | | | | | | | | | | | | | | <UIImageView:0x10e81870>
| | | | | | | | | | | | | <UIView:0x10e88860>
| | | | | | | | | | <UIImageView:0x133a51f0>
| | | | | | | | | | <UIImageView:0x133a5390>
| | | | | | | | | *<PNDetailsContainerView:0x133b5100>
| | | | | | | | | | *<UIView:0x133b52f0> - AMBIGUOUS LAYOUT
| | | | | | | | | | | *<UILabel:0x133b5380>
| | | | | | | | | | | *<UILabel:0x133b5af0>
| | | | | | | | | | | *<UILabel:0x133b5e10>
| | | | | | | | | | | *<UILabel:0x133b65b0>
| | | | | | | | | | | *<UIImageView:0x13350be0>
| | | | | | | | | | | *<UIPageControl:0x133b7550>
| | | | | | | | | | | | <UIView:0x145a3610>
| | | | | | | | | | | | <UIView:0x145a3830>
| | | | | | | | | | | | <UIView:0x145a3a30>
| | | | | | | | | | | | <UIView:0x10e890a0>
| | | | | | | | | | *<PNDescriptionWebView:0x133a7410>
| | | | | | | | | | | <_UIWebViewScrollView:0x133af740>
| | | | | | | | | | | | <UIWebBrowserView:0xd3fc800>
| | | | | | | | | | *<UIView:0x133bab70> - AMBIGUOUS LAYOUT
| | | | | | | | | | | *<UILabel:0x133bad40>
| | | | | | | | | | | *<UIImageView:0x133bb0e0>
| | | | | | | | | | | *<UIButton:0x133a18b0>
| | | | | | | | | | | | <UIImageView:0x133a1a70>
| | | | | | | | | | | | <UIImageView:0xe85dd80>
| | | | | | | | | | | *<UITextView:0xd3dec00>
| | | | | | | | | | | | <_UITextContainerView:0x133c7ce0>
| | | | | | | | | | | | <UIImageView:0x133bbd90>
| | | | | | | | | | | | <UIImageView:0x133bbf60>
| | | | | | | | | | *<UIView:0x133a4200> - AMBIGUOUS LAYOUT
| | | | | | | | | | | *<UIScrollView:0x133a4290>
| | | | | | | | | | | | *<PNColorSizeButton:0x144c3b00> - AMBIGUOUS LAYOUT
| | | | | | | | | | | | | <UIButtonLabel:0x144c3bf0>
| | | | | | | | | | | | *<PNColorSizeButton:0x144c4f20> - AMBIGUOUS LAYOUT
| | | | | | | | | | | | | <UIButtonLabel:0x144c5010>
| | | | | | | | | | | | *<PNColorSizeButton:0x144c6330> - AMBIGUOUS LAYOUT
| | | | | | | | | | | | | <UIButtonLabel:0x144c6420>
| | | | | | | | | | | | *<PNColorSizeButton:0x144c7720> - AMBIGUOUS LAYOUT
| | | | | | | | | | | | | <UIButtonLabel:0x144c7810>
| | | | | | | | | | | | *<PNColorSizeButton:0x144c8b10> - AMBIGUOUS LAYOUT
| | | | | | | | | | | | | <UIButtonLabel:0x144c8c00>
| | | | | | | | | | | *<UIScrollView:0x133a3ca0>
| | | | | | | | | | | | *<PNColorSizeButton:0xe8445b0> - AMBIGUOUS LAYOUT
| | | | | | | | | | | | | <UIButtonLabel:0xe844850>
| | | | | | | | | | | | *<PNColorSizeButton:0xe84a290> - AMBIGUOUS LAYOUT
| | | | | | | | | | | | | <UIButtonLabel:0xe84a380>
| | | | | | | | | | | | *<PNColorSizeButton:0xe84f7d0> - AMBIGUOUS LAYOUT
| | | | | | | | | | | | | <UIButtonLabel:0xe84f8c0>
| | | | | | | | | | | *<UIButton:0x133a35a0>
| | | | | | | | | | | | <UIButtonLabel:0xe85bcf0>
| | | | | | | | | | *<UIView:0x133a37b0> - AMBIGUOUS LAYOUT
| | | | | | | | | | | *<UIButton:0x133a13d0>
| | | | | | | | | | | | <UIButtonLabel:0xe85ae50>
| | | | | | | | | | | *<UIButton:0x133a2f40>
| | | | | | | | | | | | <UIButtonLabel:0xe859ce0>
| | | | | | <UIImageView:0x145975a0>
| | | | | *<UIButton:0x1339dc50>
| | | | | | <UIButtonLabel:0xe858c70>
| | | | | *<_UILayoutGuide:0x1339e720> - AMBIGUOUS LAYOUT
| | | | | *<_UILayoutGuide:0x1339ec50> - AMBIGUOUS LAYOUT
| | <UINavigationBar:0x10b524b0>
| | | <_UINavigationBarBackground:0xe9bcad0>
| | | | <_UIBackdropView:0x133835d0>
| | | | | <_UIBackdropEffectView:0x133839d0>
| | | | | <UIView:0x13383a70>
| | | | <UIImageView:0xe9bcbb0>
| | | <UINavigationItemView:0x10b52c90>
| | | | <UILabel:0x10b52d40>
| | | <UINavigationButton:0xbf0b790>
| | | | <UIButtonLabel:0xbf0b490>
| | | <UINavigationButton:0xbf0a370>
| | | | <UIImageView:0xbf09d10>
| | | <_UINavigationBarBackIndicatorView:0x133983e0>
detailsContainerView が実際のサイズになるように、これを解決したいと思います。
このビュー全体が、スクロール ビューに属する別のビューにサブビューとして読み込まれていることに注意してください。contentSize とビューの高さを手動で設定できますが、detailViewController が 9000 の高さを取りたくないようです (または、他の何かが原因である可能性があります)。