2013-09-30 32 views
-1

我正在處理ListView。我的列表視圖在運行時從服務器獲取數據。我希望在從服務器獲取數據時禁用我的列表視圖特定項目,並在獲取此數據後啓用它。我不想使用progressBar。 當前我正在使用下面的代碼來禁用列表項。如何啓用和禁用listview項目運行時間?

@Override 
public boolean isEnabled(int Id) { 
    return false; 
} 

,但不知道如何啓用再次是因爲上面的方法總是返回false當我打電話it.please告訴我,我該怎麼辦呢?

提前致謝。

+0

從服務器獲取數據時,是否要禁用特定的列表項或每個列表項?我的答案中提到的解決方案將有助於在從服務器獲取數據時禁用單擊所有listitem。 –

回答

0

只有在數據加載之後才能將列表視圖添加到其父項中?也許你會使用一些佔位符,片段或框架。

+0

我正在使用持有人和框架。我該怎麼做,請你舉個例子嗎? –

+0

請參閱此處的示例:http://stackoverflow.com/questions/6661261/how-to-add-dynamic-content-to-lineary-layout-programmatically-in-my-case – Steelight

0

只需使用boolean。設置布爾變量false直到它從服務器下載數據。當數據獲取任務完成時將其設置爲true。每次請求數據時都要重置標誌。

而在你裏面onItemClickListener將代碼包含在具有該布爾變量的if條件中。簡直是最好的。 :)

+0

我正在使用此方法來禁用列表項目,但不知道如何啓用項目。 @Override public boolean isEnabled(int Id){ \t return false; \t} 因爲上述方法總是在我調用它時返回false。 –