Как вы можете заставить NSButton отсоединиться от NSStackView, когда размер стека изменяется?

Как вы можете получить NSButton оторваться от NSStackView когда размер стека изменяется?

NSControl подклассы, которые используют NSCell рисование, похоже, отличается от других NSView подклассы по видимости с сопротивлением сжатию в Auto Layout.NSStackView Кажется, здесь тоже ничего не изменится.

Если я установлю приоритет видимости для элемента управления больше 1, он не будет сброшен. Если я установлю его на 0, ну, конечно, он будет только падать и никогда не появится.

Как это должно работать?
Что нужно, чтобы кнопка или другой элемент управления отбрасывались при уменьшении размера стека?
Может быть, это нехватка документов и примеров NSStackView...

2 ответа

Решение

Прежде чем я увидел какие-либо взгляды, я должен был сделать две вещи:

  1. Вызов -[NSStackView setClippingResistancePriority:forOrientation:], Если размер представления стека привязан к размеру окна, приоритет должен быть меньше NSLayoutPriorityWindowSizeStayPut (500) или представление стека не позволяет окну становиться меньше его содержимого.

  2. Каждый раз, когда я добавлял представление в представление стека, которое хотел отсоединить, -[NSStackView setVisibilityPriority:forView:] за это мнение.

Попробуйте установить приоритет NSStackViewVisibilityPriorityDetachOnlyIfNecessary?

Другие вопросы по тегам