2011-06-07 43 views
1

請在我分支學習一些ActionScript時隨身攜帶。AS3 - 在用戶輸入時更新flickr圖像

我正在嘗試將flickr整合到我創建的天氣應用程序(yahoo weather api)中,並決定以flickrGrabber(http://blog.organa.ca/?p=19)作爲起點。我有天氣應用程序和flickrGrabber工作,但在初始加載之後更新flickrGrabber對我來說非常具有挑戰性。

初始圖像正在通過名爲flickrLocationName的變量設置的搜索項拉動,我能夠在輸入新的郵政編碼時成功更新變量值,但我似乎無法獲取flickrGrabber卸載& reload與新的價值。我的flickrGrabber代碼位於圖層文檔AS上。 flickrGrabber類可以在Src文件夾中找到,而var flickrLocationName從WeatherObject類中設置,該類也可以在Src文件夾中找到。

你可以看到我通過訪問此鏈接的意思是: http://truimage.biz/WAS400/WeatherApp/Deploy/weatherApp.html

當然我的源代碼可以在這裏下載: http://truimage.biz/WAS400/weatherApp.zip

任何幫助將是非常讚賞。下面是一些示例代碼:

import flickrGrabber; 
var apiKey:String = "####"; //The working API key is in the zip file 
var apiSecret:String = "####"; //The working API secret is in the zip file 
var flickrLocationName:String; 
var grabber:flickrGrabber; 

function locationImage():void 
{ 
    grabber = new flickrGrabber(1024,600,apiKey,apiSecret,flickrLocationName,false); 

    grabber.addEventListener("imageReady", onLoadedImage); 
    grabber.addEventListener("flickrGrabberError", onErrorImage); 
    grabber.addEventListener("flickrConnectionReady", onFlickrReady); 

    function onFlickrReady(evt:Event):void 
    { 
     grabber.loadNextImage(); 
    } 
    function onLoadedImage(evt:Event):void 
    { 
     addChildAt(grabber.image,0); 
    } 
    function onErrorImage(evt:ErrorEvent):void 
    { 
     trace("Report error: " + evt.text); 
    } 
} 

我敢肯定改變圖像我需要刪除

addChildAt(grabber.image,0); 

並重新運行該功能

locationImage(); 

但他是我最好的猜測。我已經在這3天了。

+0

嘗試隔離問題並構建一個最小的示例,以便您可以發佈帶有問題的代碼。 – Matthias 2011-06-07 18:29:38

+0

看起來像它對我有用。我輸入1壓縮機去它的作品。我通過按X鍵5次刪除第一個郵編,然後輸入一個新的郵編,然後按去和那個工程。所以有什麼問題? – 2011-06-07 18:59:39

+0

@The_asMan,天氣確實可以正常工作,但是當我回想起函數並傳遞新變量值時,您會看到背景(海洋景觀)不會改變。 – 2011-06-07 19:34:13

回答

0

摸着摸了摸了3天后。