Просмотр полной версии : скинизация наследников List
shaman4d
19.03.2010, 19:06
Код не работает, комбобокс не реагирует на стиль. Как полечить?
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="horizontal">
<mx:Style>
List
{
alternating-item-colors:#ff0000,#00ff00;
}
ComboBox
{
alternating-item-colors:#ffff00,#ffff11;
}
</mx:Style>
<mx:List width="100" height="200">
<mx:dataProvider>
<mx:Array>
<mx:Object label="1" />
<mx:Object label="1" />
<mx:Object label="1" />
<mx:Object label="1" />
<mx:Object label="1" />
</mx:Array>
</mx:dataProvider>
</mx:List>
<mx:ComboBox>
<mx:dataProvider>
<mx:Array>
<mx:Object label="1" />
<mx:Object label="1" />
<mx:Object label="1" />
<mx:Object label="1" />
<mx:Object label="1" />
</mx:Array>
</mx:dataProvider>
</mx:ComboBox>
</mx:Application>
У меня штатно перекрасилось. Стоит SDK 3.4.1.
bastrakov
24.03.2010, 10:42
пример работает правильно. во
shaman4d
29.03.2010, 14:25
Да он не правильно работает. Комбобокс раскрашивается теми же цветами что и Лист, хотя в стиле укомбобокса указаны другие цвета.
ShockWave512
30.03.2010, 01:28
да есть такой баг, flex 3.5.x
вот в таком виде отлично пашет
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical">
<mx:Style>
.ListC {
alternating-item-colors: #ff0000, #00ff00;
}
.ComboBoxC {
alternating-item-colors: #ffff00, #00ffFF;
}
</mx:Style>
<mx:List width="100" height="200" styleName="ListC">
<mx:dataProvider>
<mx:Array>
<mx:Object label="1" />
<mx:Object label="1" />
<mx:Object label="1" />
<mx:Object label="1" />
<mx:Object label="1" />
</mx:Array>
</mx:dataProvider>
</mx:List>
<mx:ComboBox styleName="ComboBoxC">
<mx:dataProvider>
<mx:Array>
<mx:Object label="1" />
<mx:Object label="1" />
<mx:Object label="1" />
<mx:Object label="1" />
<mx:Object label="1" />
</mx:Array>
</mx:dataProvider>
</mx:ComboBox>
</mx:Application>
shaman4d
30.03.2010, 13:19
да есть такой баг, flex 3.5.x
вот в таком виде отлично пашет
Да только нужно чтобы стиль был задан для List а не кастомный для отдельного листа. В проекте очень много листов и назначать вручную каждому не получиться.
ShockWave512
30.03.2010, 13:45
почему это для отдельного?, применяй хоть к миллиону
shaman4d
30.03.2010, 13:49
Для того чтобы применить к миллиону, я у каждого из этого миллиона должен написать styleName='ListC' .
ShockWave512
30.03.2010, 14:29
или один раз создать свой компонент на основе ComboBox
или лист
таким изгибом
shaman4d
30.03.2010, 14:34
Я так понимаю, что просто CSS решить нельзя (с условием что для List используется глобальная декларация) ?
ShockWave512
30.03.2010, 15:24
не знаю, баг есть, поищи, может есть решения
попробуй варианты
- вынеси css в отдельный файл
- поменять местами
- грузить css уже скомпиленый
- отдельный компонент (уже предлагал) внутри него свой сss запилить
кстати возможно это не баг
List есть в ComboBox-e при выпадении, вот он и подхватывает стиль
логично ...
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.