Каким образом капучино (объектив-j) / «Атлас» вынесли относительное и абсолютное положение из картинки? - PullRequest
2 голосов
/ 11 октября 2010

В последнее время я проверял Капучино и Атлас, и они, кажется, абстрагировали относительное и абсолютное позиционирование во что-то, что просто «работает».Мне было интересно, для тех, кто знаком с проектом - как они это сделали?

Я всегда думал, что относительное и абсолютное позиционирование - это неясный способ думать о позиционировании элементов, поэтому мне действительно любопытнооб этом.

Любая помощь или ресурсы, которые я мог бы проверить, были бы фантастическими!

1 Ответ

5 голосов
/ 11 октября 2010

Капучино использует модель представлений Какао. В обычном HTML основное внимание уделяется разметке текста, поэтому вы получаете такие вещи, как «плавающие», которые позволяют вам вставлять один блок текста в другой.

В Cappuccino расположение и размер объектов больше похож на рабочий стол. Вы размещаете свои виджеты в иерархии «видов» с фиксированными координатами и «привязываете» их к одной или нескольким сторонам экрана (или к родительскому виду).

Это как в Какао, так что просто посмотрите, как это описано в Интерфейсном Разработчике:

http://developer.apple.com/library/mac/#documentation/DeveloperTools/Conceptual/IB_UserGuide/Layout/Layout.html%23//apple_ref/doc/uid/TP40005344-CH19-SW9

Пружины и распорки в управление авторазмером определяет выбранный просмотреть отношения с родителем Рамка. Весна вызывает вид на изменить размер пропорционально на основе ширина или высота его суперпредставления. Стойка заставляет вид поддерживать фиксированное расстояние между собой и его суперпредставление вдоль заданного края.

Конечно, все это сводится к обычному абсолютному позиционированию с JavaScript для выполнения модели изменения размера.

...