У меня есть NSView для размещения слоя (-isFlipped = YES) с тремя подпредставлениями для размещения слоя.Подвиды - это заголовок, область содержимого и нижний колонтитул.Заголовок имеет раскрывающий треугольник, который свернет представление содержимого и просто покажет верхний и нижний колонтитулы, соединенные вместе.
Я могу довольно легко добиться этого с помощью Core Animation, но при изменении размера представления возникает странная проблема,Если я изменю размер представления по горизонтали, я хочу, чтобы все три подпредставления соответствовали новой ширине.Если я изменю размер по вертикали, я хочу, чтобы подпредставления оставались там, где они есть (т.е. нижний край представления должен иметь возможность перемещаться, не влияя на положение подпредставления (кроме, конечно, отсечения). Причина этого в том, что мне нужно свернутьразмер представления, когда contentView исчезает.
На самом деле происходит то, что все три подпредставления перемещаются выше вершины представления при изменении высоты ... и затем снова включаютсяместо, когда горизонталь изменена. Это как-то связано с сочетанием вида и подпредставлений, потому что, если подпредставления размещаются непосредственно в окне, они ведут себя правильно. Кроме того, я попытался добавить кнопку в представление ивела себя нормально.
Я смог заставить кнопку вести себя так же, сделав ее также и на слоях ... так что я думаю, что поддержка слоев имеет к этому какое-то отношение.
Это похоже на то, что фоновые слои застряли в родительском представлении, поскольку оно изменяет размеры и выталкиваетсядаже если координаты перевернуты.
Есть идеи?