Как обновить данные XML, связанные со списком в Flex? - PullRequest
0 голосов
/ 10 февраля 2012

Я пишу приложение для Blackberry Playbook, используя Flash Builder 4.6 и flex.Я столкнулся с проблемой, с которой, я надеюсь, кто-то сможет мне помочь.Это выглядит следующим образом:

Во-первых, я создаю приложение, которое позволяет пользователю просматривать различные каналы Reddit.Я использую API Reddit, в котором вы можете использовать данные в формате JSON или XML.Я использую XML.В Adobe Flash Builder я запустил мастер «Данные / службы», чтобы подключиться к источнику данных, который извлекает последние 25 или около того записей в Reddit.Затем я связал эти данные с компонентом Spark List, который находится в представлении redditFeed.Вы заметите, что он использует AsyncListView.Это код:

redditFeed.mxml

<fx:Script>
    <![CDATA[

public function myList_creationCompleteHandler():void
            {   

                getRedditFeedResult.token = redditFeedGrabber.getRedditFeed("");                    
            }
        ]]>
    </fx:Script>

<fx:Declarations>
        <s:CallResponder id="getRedditFeedResult"/>
        <redditfeedgrabber:RedditFeedGrabber id="redditFeedGrabber"/>
        <s:CallResponder id="redditFeedJSONResult"/>
    </fx:Declarations>

     <s:List id="feedList" width="100%" height="100%" change="myList_changeHandler(event)"
                contentBackgroundColor="#deefff" 
                creationComplete="myList_creationCompleteHandler()">
        <s:AsyncListView id="asyncList" list="{getRedditFeedResult.lastResult}"/>
            <s:itemRenderer>
                <fx:Component>
                    <s:IconItemRenderer iconField="thumbnail" 
                                        iconWidth="64" iconHeight="64"
                                        labelField="title" fontSize="20"
                                        messageField="pubDate"
                                        verticalAlign="top"
                                        iconPlaceholder="{assets.LoadingIcon}">
                        <fx:Script>
                            <![CDATA[
                                import assets.LoadingIcon;
                            ]]>
                        </fx:Script>
                    </s:IconItemRenderer>
                </fx:Component>
            </s:itemRenderer>



        </s:List>

Теперь для моей проблемы;У меня есть кнопка обновления с именем «refreshButton».Я хотел бы, чтобы данные в приведенном выше списке обновлений обновлялись, когда пользователь нажимает эту кнопку.Я искал решение повсюду, но безрезультатно.Итак, как я могу перезагрузить XML-данные, которые привязаны к списку, и затем в списке показать эти новые данные?Я ценю любую помощь, которую вы можете оказать.Пожалуйста, дайте мне знать, если есть что-то еще, что я могу вам помочь, чтобы помочь мне.Спасибо!

1 Ответ

0 голосов
/ 10 февраля 2012

Все, что вам нужно сделать, это сделать тот же вызов, что и в обработчике завершения создания в вашем обработчике нажатий кнопок. Установка токена и повторный вызов должны вызвать обновление, когда ASyncToken получит результат.

...