Flex 3 - как выбрать элемент в списке по умолчанию? - PullRequest
1 голос
/ 25 мая 2009

как выбрать элемент в списке по умолчанию

выбранный по умолчанию элемент, скажем, индекс 0

Я пробовал что-то вроде этого -

listid.selectedIndex = somevalueinmyprogram - 1; // 0

но когда я отлаживаю это, я получаю
_selectedIndex = 0 selectedIndex = -1

и значение по умолчанию не выбрано, почему так? [я уже проверил очевидное, что somevalufrommyprogram не равен 0]

Помощь!

1 Ответ

1 голос
/ 20 июня 2009

Я обнаружил, что если вы устанавливаете selectedItems путем определения массива выбранных элементов, он работает лучше, чем selectedIndex.

function setSelectedCategories():void{
   var selectedItems :Array = new Array();      
   for each (var selectedCategory:Category in entry.categories)      {
         for each (var category:Category in categories)         {       
              if (selectedCategory.categoryID == category.categoryID){
                     selectedItems .push(category);               
                     break; 
              }       
         }   
   }   

   categoriesList.selectedItems = selectedItems ;
}

ИЛИ использование selectedIndices работает, если вы хотите использовать массив, содержащий индексы, которые вы хотите выбрать.

for ( var i:int=0; i < userIpods.length; i++ ) {

     //j will represent the list item's index value

     for ( var j:int = 0; j < iPodAry.length; j++) {

         if ( userIpods[i] == iPodAry[j].id ) {

         selectedIpodIndices.push( j );
         break;

         } //end if

     } //end for ( var iPodObj:Object in iPodAry) {


} //end for ( var i:int in userIpods ) 


/*mark as selected those index values in the 
selectedIpodIndices array*/

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