Помещение XML-запроса в элемент управления выпадающего списка - PullRequest
0 голосов
/ 07 февраля 2011

У меня есть этот проект для школы, где мне нужно заполнить элемент управления раскрывающегося списка из файла XML.Мне удается сделать это для управления вводом метки / текста, но я не могу сделать это в раскрывающемся списке.Я получаю эту ошибку каждый раз, когда говорю ему «additem» с помощью запроса xml (не получая его с помощью простого текста): «# 1009 Не удается получить доступ к свойству или методу ссылки на пустой объект»функция, которая получает файл XML:

private function myFunc(event:ResultEvent):void
{
   myXml=event.result as XML;
}

Это функция, которая запускается после сборки элемента управления:

protected function ActivityDropDown_creationCompleteHandler(event:FlexEvent):void
{

    droplistdb=new ArrayList();
    ActivityDropDown.dataProvider=droplistdb;
    droplistdb.addItem({label:myXml.Activity.(attribute("publish")=="true").ActivityName});
} 

1 Ответ

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

Вот пара твиков, которые должны облегчить отладку.

Во-первых, не создавайте новый ArrayList только для провайдера данных DropDown.Просто установите XMLList of Actitivies как dataProvider и используйте labelFunction для извлечения ActivityName из XML.

Вот ваша отладочная labelFunction:

//set a breakpoint on each line
function(obj:XML):String{
  var activityName:XML = obj.ActivityName;
  return activityName.toString();
}

Если вы не получитеФункция метки, то этот запрос E4X является неправильным -> myXml.Activity. (attribute ("publish") == "true").Вы хотите разбить это на части по частям.Попробуйте получить правильный XMLList из узлов myXml.Activity?

trace(myXml.Activity.length());//should show the number of Activity nodes

Попробуйте и дайте нам знать, как это получается.

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