Как сделать небольшой Flash SWF с ComboBox в Actionscript 3? - PullRequest
1 голос
/ 11 февраля 2010

У меня есть чистый проект Actionscript 3 с использованием библиотек flash. *, Который компилируется примерно до 6k (с использованием mxmlc). Программа обрабатывает около 1k фигур, несколько спрайтов, соединение с сокетами, отлично работает (на вкус меньше наполнения).

Теперь, как бы я добавил элемент управления ComboBox, не вызывая чрезмерного раздувания?

Более конкретно, я хотел бы сохранить размер менее 100 КБ.

Пока я пробовал:

  • Adobe mx.controls ComboBoxexample - простой пример mxml компилируется в 200 + k как на моем главном Linux Box с использованием mxmlc, так и в Windows с использованием Flash Builder 4
  • Yahoo Astra - использует библиотеки mx внизу (так же раздуты, как Adobe?), Плюс не содержит точного ComboBox
  • Кит Питер MinimalComps - кажется небольшим, но далеко не обеспечивающим функциональность ComboBox
  • SPAS (Swing Package для Actionscript) - компилируется до 130 КБ, но альфа-версия ComboBox не позволяет мне регулировать высоту ...
  • asuilib - компилируется до 40 КБ, к сожалению, этот ComboBox не обеспечивает прокрутку элементов ... если он не помещается на экране, невозможно прокрутить до него

Теперь мои вопросы:

  1. Есть ли способ уменьшить размер проектов, импортирующих mx.controls?
  2. Может быть, есть способ исправить SPAS или Asuilib ComboBox?
  3. Возможно, есть другие библиотеки, которые предоставляют ComboBox (или DropList)?

Ответы [ 5 ]

1 голос
/ 12 апреля 2010

Я разработчик SPAS 3.0, поэтому постараюсь дать вам несколько (полезных?) Ответов.

> запутанная лицензия

SPAS 3.0 не является полностью бесплатным, но он (всегда будет) бесплатным для использования. Это лицензия Java API. Это означает, что вы можете использовать этот API-интерфейс по своему усмотрению, но вы не можете изменять или продавать исходные коды SPAS 3.0.

> очевидно, один разработчик

Ты прав! В настоящее время я работаю над установлением партнерских отношений для обеспечения SPAS 3.0 «реальной долгосрочной жизнеспособности».

> некоторые функции отсутствуют, ошибки видны в альфа-формате

Тоже верно;) Я знаю, что многие разработчики были разочарованы API из-за этого выбора.

Итак, если у кого-то есть какие-либо проблемы, связанные с ошибками или отсутствующими функциями, не стесняйтесь обращаться ко мне. Я всегда отвечаю на вопросы о SPAS 3.0.

Паскаль

1 голос
/ 11 февраля 2010

Хотя я в любом случае не знаю, как уменьшить размер mx.controls, существует возможность создания общих ресурсов. Таким образом, размер вашего файла остается небольшим, а ресурсы выпадающего списка кэшируются.

Один из способов уменьшить размер SWF-файла вашего приложения - это преобразование общих ресурсов в отдельные файлы, которые можно отдельно загружать и кэшировать на клиенте. Эти общие ресурсы загружаются любым количеством приложений во время выполнения, но их необходимо передать клиенту только один раз.

См. http://livedocs.adobe.com/flex/3/html/help.html?content=intro_3.html

<?xml version="1.0">
<flex-config>
    <compiler>
        <source-path>
            <path-element>../mycomponents/components/local</path-element>
        </source-path>
    </compiler>
    <output>../libraries/CustomCellRenderer</output>
    <directory>true</directory>
    <debug>false</false>
    <include-classes>
        <class>CustomCellRendererComponent</class>
    </include-classes>
</flex-config>
1 голос
/ 11 февраля 2010

Возможно myLib будет соответствовать вашим потребностям.

0 голосов
/ 01 февраля 2011

Как насчет SelectBox в AS DataProvider Controls ?

0 голосов
/ 15 февраля 2010

Временное решение: с использованием вышеупомянутого пакета SPAS ,

профи

  • имеет приличную документацию
  • примеры
  • легче, чем mx.controls
  • последнее, но не менее важное, оно действительно работает

против

  • запутанная лицензия, очевидно бесплатная, как в пиве, но не как в речи
  • некоторые функции отсутствуют, ошибки видны в альфа (до)
  • скомпилировано более 100 КБ
  • очевидно один разработчик, подозреваемый в долгосрочной жизнеспособности

Долгосрочный: все еще готов принять ответ для «лучшей» флеш-библиотеки с ComboBox.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...