月と年 (2010 年 6 月、2010 年 7 月など) で区切られたイベントのリストがあります。
リストが非常に長いため、高速スクロールを有効にしたい。
ListViews
Android で高速スクロールを有効にするにはどうすればよいですか?
月と年 (2010 年 6 月、2010 年 7 月など) で区切られたイベントのリストがあります。
リストが非常に長いため、高速スクロールを有効にしたい。
ListViews
Android で高速スクロールを有効にするにはどうすればよいですか?
ListActivity の onCreate メソッドで setFastScrollEnabled を使用します。
getListView().setFastScrollEnabled(true);
xmlでandroid:fastScrollEnabledを使用します。
<ListView
android:id="@+id/listview_files"
...
android:fastScrollEnabled="true" >
</ListView>
以下を試してください
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="listviewfastscrollstyle" parent="android:Theme">
<item name="android:fastScrollTrackDrawable">@drawable/listselector</item>
<item name="android:fastScrollThumbDrawable">@drawable/listselector</item>
</style>
</resources>
マニフェストで、次のようにスタイルを設定します。
<application android:icon="@drawable/icon" android:label="@string/app_name" android:theme="@style/CustomTheme">
これはリストビューです
<ExpandableListView
android:id="@android:id/list1"
android:layout_width="match_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:drawSelectorOnTop="false"
android:fastScrollAlwaysVisible="true"
android:fastScrollEnabled="true"
/>
表示する独自のスクローラー画像を選択するなど、高速スクローラーをカスタマイズできるようにしたい場合は、次のソースを使用することをお勧めします。
https://github.com/nolanlawson/CustomFastScrollViewDemo/
基本的に、リストビュー アダプターはセクションインデクサーを実装する必要があります。このセクション インデクサーは、物事を複雑にしたくない場合や、リストの全長にわたって単純な高速スクロールを提供したくない場合は、非常に単純なものにすることができます。
fastscroller の直接のソースは次のとおりです。
このビューをリストビューの周りに配置し (xml レイアウト ファイルのこのビュー内にリストビューをネストします)、リストビューで android:fastScrollEnabled="true" を設定します。
また、以前の回答を確認することもできます: ListAdapter と SectionIndexer での高速スクロール表示の問題
私はあなたが達成したいと思っていたことに似た何かをしたかった. この投稿に出くわしました。これは、標準の Android AlphabetIndexer を使用せずに高速スクロールを実装するための優れた方法です。これには、常に必要とは限らない Cursor が必要です。
基本的に、アダプターに SectionIndexer インターフェースを実装する必要があります。あなたの場合、現在の文字の代わりに、スクロールすると現在の期間が表示されます。
xml で fastScrollEnabled を定義するか、必要に応じて実行時に設定します。
1) <ListView
...
android:fastScrollEnabled="true" />
2) mListView.setFastScrollEnabled(true);