![]() |
|
||||||||||
|
|
|
|||||
|
Регистрация: Jan 2010
Сообщений: 28
|
Условие:
Значением source у BitmapImage, является Bindable'овая переменная типа String, которая может быть либо равна "", либо пути к изображению. В первом случае BitmapImage послушно ничего не делает, во втором - загружает и отображает изображение. Задача: Добавлять на конец пути к изображению, ещё несколько символов(к примеру:"=s100"). Но добавлять их только в том случае, если строка не пустая(иначе BitmapImage будет считать этот "хвостик" - путём к картинке, и пытаться её загрузить). Я, пока что нашёл только вот такой вариант: Насколько сей вариант "кошерный", или возможно есть какие-то более грамотные подходы?
__________________
GAE + Flex = CyoaWare =) |
|
|||||
|
Регистрация: Jan 2010
Сообщений: 211
|
И это работает? С двумя фигурными скобками?
Что-то кажется, что правильнее было бы во всех смыслах поместить туда вызов функции, которая будет возвращать строку (или null). |
|
|||||
|
Регистрация: Jan 2010
Сообщений: 28
|
Цитата:
Если вот так, "на авось", оставлять сомнительные решения, то вскоре код превратиться в помойку... =( Вроде да. Когда писал - сам сомневался, что так можно. =) То же так думаю. Но как это реализовать - что-то не соображу.
__________________
GAE + Flex = CyoaWare =) |
|
|||||
|
Регистрация: Jan 2010
Сообщений: 211
|
А что сложного? - Первое - должна возвращать String (null или строку), второе - в качестве параметра ОБЯЗАТЕЛЬНО должен быть биндовый параметр (тот же image).
|
|
|||||
|
Регистрация: Sep 2011
Сообщений: 2
|
а через Loader\URLLoader не пробовали?
|
|
|||||
|
Регистрация: Sep 2010
Адрес: Ростов-на-Дону
Сообщений: 369
|
Как-то не понятно, как эта конструкция с двумя фигурными скобками вообще работает... Откуда ты взял такой вариант? Там есть объяснение?
|
|
|||||
|
Регистрация: Jan 2010
Сообщений: 28
|
Цитата:
Цитата:
Можно смело считать это "моим личным изобретением". =)))) Теперь осталось понять, какой вариант правильнее: Вариант 1. [Bindable] public var image:String ... <s:BitmapImage id="myImage" x="20" y="20" width="100" height="100" horizontalAlign="center" verticalAlign="middle" scaleMode="letterbox" smooth="true" smoothingQuality="high" source="{image}{(image!='')?'=s100':''}"/> [Bindable] public var image:String public function i(value:String, arg:String):String { if (value && value != "") { return value + arg; } return null; } ... <s:BitmapImage id="myImage" x="20" y="20" width="100" height="100" horizontalAlign="center" verticalAlign="middle" scaleMode="letterbox" smooth="true" smoothingQuality="high" source="{i(image, '=s100')}"/>
__________________
GAE + Flex = CyoaWare =) |
![]() |
![]() |
Часовой пояс GMT +4, время: 20:53. |
|
|
« Предыдущая тема | Следующая тема » |
|
|