2012-02-05 73 views
0

我的android應用程序在一個活動中獲取List,但包含此列表的LisView的活動位於另一個類中。所以:如何在Android中正確填充其他類的ListView?

@Override 
protected void onPostExecute(List<CityInfo> result) 
{ 

    CityArrayDataAdapter cityArrayDataAdapter = new CityArrayDataAdapter(CityParserActivity.this, listCitiesData); 
    super.onPostExecute(result); 
} 

其中CityParserActivity.this是我的另一項活動的上下文。但是Eclipse顯示我的下一個:

類型CityParserActivity沒有外圍實例在範圍上

如何解決這個問題訪問?感謝幫助。

可能的解決辦法:

CityParserActivity cityParserActivity = new CityParserActivity(); 
CityArrayDataAdapter cityArrayDataAdapter = new CityArrayDataAdapter(cityParserActivity, listCitiesData); 

回答

1

你如何期望得到您的CityParserActivity實例?你是否在這個AsyncTask的封閉類中傳入了某處的引用?如果你不是目前的你的CityParserActivity,你不能「祝」CityParserActivity存在,試圖將你的this指針投入一個。

+0

當然,我不希望你說得對。那麼,我應該將AsyncTask作爲我的活動的內部類嗎? 或者,如果我正確地理解了你的話,我更新了帖子後呢? – 2012-02-05 17:51:16

+0

要麼是 - 哪一個,是的,會正確地解決'CityParserActivity.this'事情,或者將對您的'CityParserActivity'的引用傳遞到任何類_does_主持'AsyncTask',以便引用它。 – 2012-02-05 17:53:01

+0

我不想這樣做,因爲其他活動在他們之間分享這項活動。 – 2012-02-05 17:56:16