2012-04-24 73 views
0

我面臨一個很奇怪的現象。我正在使用兼容性包中的ViewPager來顯示配置文件。的ListView裏面ViewPager - 在ListView的項目保持空白

每個配置文件僅僅是一個在它自定義元素的ListView。每一個元素有兩種狀態:

  1. 有數據 - 它顯示
  2. 沒有數據 - 顯示佔位

我每次型材我重置的項目對象中的數據之間滑動。當我刪除REST-Calls,並讓配置文件項目爲空 - 應顯示佔位符 - 所有項目保持空白。

可能是什麼問題?

編輯:/

這就是我如何在列表視圖設置當前項目。 PageViewAdapter似乎沒問題,如果我使用靜態內容,一切都很完美。

final TextView lblTitle = (TextView)convertView.findViewById(R.id.lblTitle); 
    final LinearLayout llContent = (LinearLayout)convertView.findViewById(R.id.llContent); 
    final ProfileItem item = getItem(userPosition); 


    String title = item.getTitle(); 
    if(title == null || title.equals("")) { 
     lblTitle.setVisibility(View.GONE); 
    } else { 
     lblTitle.setText(item.getTitle()); 
    } 

    if(item.getContent().getParent() != null) { 
     ((ViewGroup)item.getContent().getParent()).removeAllViews(); 
    } 

    llContent.removeAllViews(); 
    llContent.addView(item.getContent()); 

的物品看起來都一樣,非常相似:

@Override 
public View getContent() { 
    if(isTextEmpty()) { 
     return noTextTherePlaceholder; 
    } else { 
     return view; 
    } 
} 

效果保持,即使我只返回查看或noTextTherePlaceholder相同。

如果我instate像在getView方法都一個TextView新視圖按預期工作。

+0

你應該向我們展示一些代碼,無法看到它從這裏開始。您的ViewPager適配器的代碼是特別感興趣的。 – 2012-04-24 09:57:49

回答

0

隨着視圖尋呼機你必須讓你的Activity.onCreate的所有數據,然後使用這些數據在ViewPagers適配器的onInstantiateItem

+0

這不是事實。您可以隨時編輯內容,只需要獲取正確的視圖引用即可在發生更改時調用invalidate。 – schlingel 2012-04-24 10:21:17

+0

當然,我的意思是你的數據應該以某種方式在活動對象被持久化。儘管如此,仍然在等待你的實例化代碼。 – 2012-04-24 10:24:43

+0

這是不可能的,因爲我已經通過REST在第一時間獲取它。如果應用程序在顯示下一頁之前必須等待完成通話,那將非常令人討厭。代碼已交付。 – schlingel 2012-04-24 10:28:24