gpt4 book ai didi

java - 滚动 AlphabetIndexer 时快速滚动拇指消失

转载 作者:IT老高 更新时间:2023-10-28 21:01:38 24 4
gpt4 key购买 nike

我有一个 ListView,其中 fastScrollAlwaysVisiblefastScrollEnabled 都设置为 true。在对我的 Adapter 和一个 AlphabetIndexer 实现 SectionIndexer 后,我的 fast scroll thumb 将在我滚动时消失,然后重新出现一旦我到达列表的顶部或底部。我对为什么会发生这种情况一无所知。我以前没有经历过。

AlphabetIndexer 而言,以下所有内容均有效。我的问题是为什么我的快速滚动拇指在滚动时会消失,我该如何阻止它消失?

快速滚动是否始终可见并不重要。每当 fast scroll 可见时,fast scroll thumb 不存在,它就消失了,这就是我的问题。此外,当我删除 AlphabetIndexer 时,fast scroll thumb 就像我想要的那样工作。一切都在 Activity 中成功运行,但是当我在 Fragment 中加载我的 ListView 时,结果就像我解释的那样。

这是我的 ListViewAdapter:

private class AlbumsAdapter extends SimpleCursorAdapter implements
SectionIndexer {

private AlphabetIndexer mIndexer;

// I have to override this because I'm using a `LoaderManager`
@Override
public Cursor swapCursor(Cursor cursor) {

if (cursor != null) {
mIndexer = new MusicAlphabetIndexer(cursor, mAlbumIdx,
getResources().getString(R.string.fast_scroll_alphabet));
}
return super.swapCursor(cursor);
}

@Override
public Object[] getSections() {
return mIndexer.getSections();
}

@Override
public int getPositionForSection(int section) {
return mIndexer.getPositionForSection(section);
}

@Override
public int getSectionForPosition(int position) {
return 0;
}
}

MusicAlphabetIndexer 有助于正确排序音乐:

class MusicAlphabetIndexer extends AlphabetIndexer {

public MusicAlphabetIndexer(Cursor cursor, int sortedColumnIndex,
CharSequence alphabet) {
super(cursor, sortedColumnIndex, alphabet);
}

@Override
protected int compare(String word, String letter) {
String wordKey = MediaStore.Audio.keyFor(word);
String letterKey = MediaStore.Audio.keyFor(letter);
if (wordKey.startsWith(letter)) {
return 0;
} else {
return wordKey.compareTo(letterKey);
}
}
}

最佳答案

我对快速滚动条的拇指图标也有类似的问题。我正在调查 Android 源代码,并发现了一个引入了这个问题和其他问题的提交(ArrayIndexOutOfBoundsException)。我什至在没有这个提交的情况下构建了 Android 系统,然后它就可以工作了。

我在 6 月份提交了问题:https://code.google.com/p/android/issues/detail?id=33293
当我阅读它时,我知道我可以更好地描述这个问题:)

这是出现问题的提交:https://github.com/android/platform_frameworks_base/commit/32c3a6929af9d63de3bf45a61be6e1a4bde136d3

很遗憾,我没有找到任何解决方案,除了还原提交,我离开了它。
我希望有人能找到解决方法。

关于java - 滚动 AlphabetIndexer 时快速滚动拇指消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9780792/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com