|
|
|||||
Кто-то на форуме тут ваял создание такой плитки.
Поищите по ключеому слову "метро-стайл" Вроде так это называется. Не помню только - по английски это было или как. |
|
|||||
Регистрация: Jul 2014
Сообщений: 36
|
Цитата:
|
|
|||||
Регистрация: Oct 2006
Сообщений: 2,281
|
b000ris, чем не устраивает мое решение?
|
|
|||||
Регистрация: Jul 2014
Сообщений: 36
|
При достаточно большом количестве элементов слишком сильно грузит флеш. Это неприемлемо.
|
|
|||||
Регистрация: Oct 2006
Сообщений: 2,281
|
Цитата:
Добавлено через 2 минуты Если ты хоть одним глазом посмотришь на код, то увидишь что в цикле только ифы и сложения.Скорее флэш ляжет на отрисовке такого числа элементов, чем на рассчете их координат. |
|
|||||
Регистрация: Jul 2014
Сообщений: 36
|
Вот то что сделал (оно реально работает):
Надо использовать в качестве layout для контейнера класс следующего кода: package { import mx.core.ILayoutElement; import spark.components.supportClasses.GroupBase; import spark.layouts.supportClasses.LayoutBase; public class FlowLayout extends LayoutBase { override public function updateDisplayList(containerWidth:Number, containerHeight:Number):void { var x:Number = 0; var y:Number = 0; var layoutTarget:GroupBase = target; var count:int = layoutTarget.numElements; for (var i:int = 0; i < count; i++) { var element:ILayoutElement = layoutTarget.getElementAt(i); element.setLayoutBoundsSize(NaN, NaN); var elementWidth:Number = element.getLayoutBoundsWidth(); var elementHeight:Number = element.getLayoutBoundsHeight(); if (x + elementWidth > containerWidth) { x = 0; y += elementHeight; } element.setLayoutBoundsPosition(x, y); x += elementWidth + 10; } } } } |
Часовой пояс GMT +4, время: 17:39. |
|
« Предыдущая тема | Следующая тема » |
|
|