速いスクロールをサポートしているリストビューを含むアプリを書いています(つまり、スクロールバーのスライダをドラッグすると、リストを素早く上下にスクロールできます)。これは、すべてのバージョンのJelly Bean(4.1-4.3)で完全に機能しました。しかし、私がKit Katに更新した後、高速スクロールは機能しなくなり、スクロールバーは通常のスクロールバーに過ぎません。しかし、私が自分のアプリから抜け出して戻ってくると、速いスクロールが表示されます。早いスクロールをキットキャットで一貫して機能させるにはどうすればよいですか?私は、コピーされ、以下の私のリストビューアダプターコード貼り付けまし:Androidで高速スクロールの問題4.4
// Adds section popup for fast scroll
class NameListAdapter extends SimpleAdapter implements SectionIndexer {
HashMap<String, Integer> alphaIndexer;
private String[] sections;
private ArrayList<String> sectionList;
private List<HashMap<String, String>> data = null;
public NameListAdapter (Context context, List<HashMap<String, String>> data,
int resource, String[] from, int[] to) {
super(context, data, resource, from, to);
alphaIndexer = new HashMap<String, Integer>();
sectionList = new ArrayList<String>();
this.data = data;
int size = data.size();
for (int i = 0; i < size; i++) {
HashMap<String, String> myData = (HashMap <String, String>) data.get(i);
// Get first character
String ch = myData.get("name").substring(0, 1);
// Convert character to upper case
ch = ch.toUpperCase();
// Put first char/index into our HashMap
if (!alphaIndexer.containsKey(ch)) {
alphaIndexer.put(ch, i);
sectionList.add(ch);
}
}
sections = new String[sectionList.size()];
sectionList.toArray(sections);
}
@Override
public int getPositionForSection(int section) {
if (section >= sections.length) {
return getCount() - 1;
}
return alphaIndexer.get(sections[section]);
}
@Override
public int getSectionForPosition(int pos) {
if (pos > data.size()) {
return 0;
}
HashMap<String, String> myData = (HashMap <String, String>) data.get(pos);
String ch = myData.get("name").substring(0, 1);
// Convert character to upper case
ch = ch.toUpperCase();
for (int i = 0; i < sectionList.size(); i++) {
if (sectionList.get(i).equals(ch)) {
return i;
}
}
return 0;
}
@Override
public Object[] getSections() {
return sections;
}
}
私はそれを主演気軽にこの程度のバグを開きました。 https://code.google.com/p/android/issues/detail?id=63545&colspec=ID%20Type%20Status%20Owner%20Summary%20Stars –
同じ問題が発生しました – JeffG
これはAndroid v4で解決されたようです。 4.3。 – mikejonesguy