我想用CursorAdapter和Alphabet標頭實現Material Style ListView,就像下面的鏈接所示。 https://s3.amazonaws.com/uploads.hipchat.com/67537/1095843/8h5VtFvLlRMOsqI/2015-08-19%20at%209.28%20AM.pngAndroid ListView CursorAdapter字母首字母
字母縮寫字母只是我的listview的layout_item中的一個textview。我怎樣才能確定我什麼時候設置字母表。它看起來很簡單,但由於它是一個遊標適配器,我發現當我上下滾動時,這個textView值不斷變化/消失。請注意:我正在使用遊標適配器,因此數據逐行顯示。我無法立即將所有數據發送到適配器,以便將所有內容放入地圖中並將其編入索引。有沒有人做過類似的事情?有沒有我可以使用的Java類。
private String sectionName = "";
public void bindView(View convertView, Context context, Cursor cursor) {
if (!newSectionName.equals(sectionName)) {
holder.txtSectionName.setText(newSectionName);
sectionName = newSectionName;
} else {
holder.txtSectionName.setText("");
}
}
您好,感謝您的回覆。但我不關心滾動泡泡。我正在談論左側的字母索引。 – user3773337
實際上更容易。使用recyclerview確保你實現了getItemViewType()和getItemViewTypeCount()。然後,您現在有2種不同的視圖可顯示在您的回收站視圖中。因此,當您填充回收站查看並按字母順序查看字母更改發生時。如果確實發生,請將視圖切換到另一個視圖,並在左側顯示字母。 – cj1098
我認爲它會產生與普通列表視圖相同的問題。當我向上滾動說從B部分到A時,它會在A部分的左側顯示A部分中我不想要的最後一個項目。如果我不清楚,請告訴我。 – user3773337