Изменение размера списка spark

#apache-flex #flex4 #flex-spark

#apache-flex #flex4 #flex-spark

Вопрос:

Я использую spark List s и PopupAnchor s для создания системы выпадающих меню, но у меня возникли проблемы с ее надежным размером — кажется, что список всегда хочет занимать место на 5 itemRenderers, но некоторые меню, которые мне нужно реализовать, могут содержать 3 или менее элементов. Как я могу динамически изменять размер списка в соответствии с количеством элементов в нем и не больше?

Комментарии:

1. Кстати, у меня есть многоразовое пользовательское выпадающее меню spark с иконками, и оно полностью переработано, если вы хотите позаимствовать исходный код, пришлите мне сообщение.

Ответ №1:

Это забавно. Вам нужно установить свойство в VerticalLayout списка spark.

Попробуйте этот фрагмент:

 (yourSparkList.layout as VerticalLayout).requestedRowCount = yourDataProvider.length;
  

Предполагается, что у вас есть список с именем yourSparkList и средство предоставления данных с именем yourDataProvider, которое заполняет список.

Если ваши списки становятся длинными, вы должны установить МАКСИМАЛЬНУЮ константу следующим образом:

 public static const MAXIMUM:int = 5;

if(yourDataProvider.length <= MAXIMUM){
    (yourSparkList.layout as VerticalLayout).requestedRowCount = yourDataProvider.length;
}else{
    (yourSparkList.layout as VerticalLayout).requestedRowCount = MAXIMUM;
}
  

Кстати, есть также свойство requestedMaxRowCount и свойство requestedMinRowCount.

Комментарии:

1. Спасибо! У вас есть ссылка на то, как вы реализовали это в своем собственном меню?

2. У меня его нет в открытом доступе (пока), но, надеюсь, скоро. Если вы пришлете мне электронное письмо (контакты на моем веб-сайте), я могу отправить вам исходный код того, над чем я работаю.