アクティビティにNestedScrollViewを実装しましたが、ScrollViewのようにスクロールバーを表示できません。
どうすれば表示できますか?
<Android.support.v4.widget.NestedScrollView
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:layout_below="@+id/appBar">
<LinearLayout
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:clipChildren="false"
Android:clipToPadding="false"
Android:orientation="vertical"
Android:paddingLeft="@dimen/dimen_2"
Android:paddingRight="@dimen/dimen_2">
</LinearLayout>
</Android.support.v4.widget.NestedScrollView>
解決策を見つけました。最初にNestedScrollViewの動作を「@string/appbar_scrolling_view_behavior」に設定してから、必要なすべてのNestedScrollViewにスクロールバーを表示するスタイルを作成しました。
styles.xml
:
<resources>
<!-- other styles -->
<style name="NestedScrollBarStyle">
<item name="Android:scrollbarFadeDuration">2</item>
<item name="Android:scrollbars">vertical</item>
<item name="Android:fillViewport">true</item>
<item name="Android:orientation">vertical</item>
</style>
</resources>
レイアウト内:
<Android.support.v4.widget.NestedScrollView
style="@style/NestedScrollBarStyle"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:layout_below="@+id/appBar"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<LinearLayout
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:clipChildren="false"
Android:clipToPadding="false"
Android:orientation="vertical"
Android:paddingLeft="@dimen/dimen_2"
Android:paddingRight="@dimen/dimen_2">
</LinearLayout>
</Android.support.v4.widget.NestedScrollView>
Android:scrollbars属性を使用します。
といった:
Android:scrollbars = "vertical"
Android:scrollbars = "horizontal"
Android:scrollbars = "vertical | horizontal"
<Android.support.v4.widget.NestedScrollView
Android:id="@+id/foo"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:scrollbars="vertical">
</Android.support.v4.widget.NestedScrollView>
ドキュメントリンク: https://developer.Android.com/reference/Android/view/View.html#attr_Android:scrollbars