2017-05-02 16 views
4

完全なアプリケーションからスクロールバーを削除する必要があります。 私のアプリケーションで定義されたすべてのScrollViewsにandroid:scrollbars="none"を書き込む手間を省きたいと思います。完全なアプリケーションのスクロールバーを非表示にする

は今、ここに私がしようとしたものです:

<!-- Base application theme. --> 
    <style name="AppTheme" parent="Theme.AppCompat.NoActionBar"> 
     <item name="colorPrimary">@color/colorPrimary</item> 
     <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
     <item name="colorAccent">@color/colorAccent</item> 
     <item name="android:scrollViewStyle">@style/NoScrollbars</item> 
     <item name="android:scrollbarStyle">@style/NoScrollbars</item> 
    </style> 


<style name="NoScrollbars" parent="android:Widget.ScrollView"> 
    <item name="android:scrollbars">none</item> 
</style> 

のstyles.xmlは、これを実現する方法はありますか?

+1

私はそれを行う簡単な方法がないと信じています。スクロールバーを手動で無効にすると、すべてのスタイル(listview、dropdown listview、webview、preference screen、recyclerview ...)をオーバーライドする必要があります。 – azizbekian

答えて

0

あなたのテーマにScrollViewStyleとListViewStyleを定義することができます。

<style name="Theme.MyTheme" parent="android:Theme.Holo"> 
    <item name="android:listViewStyle">@style/Widget.MyTheme.ListView</item> 
    <item name="android:scrollViewStyle">@style/Widget.MyTheme.ScrollView</item> 
</style> 

<style name="Widget.MyTheme.ListView" parent="android:Widget.ListView"> 
    <item name="android:overScrollMode">never</item> 
    <item name="android:scrollbars">none</item> 

</style> 

<style name="Widget.MyTheme.ScrollView" parent="android:Widget.ScrollView"> 
    <item name="android:overScrollMode">never</item> 
    <item name="android:scrollbars">none</item> 

</style> 

次に、あなたがあなたのAndroidManifest.xmlであなたのテーマを定義する必要があります。

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
     package="nouman.app.example" 
     android:versionCode="1" 
     android:versionName="1.0"> 

<uses-sdk android:targetSdkVersion="16" android:minSdkVersion="8"/> 

<application 
     android:hardwareAccelerated="true" 
     android:label="@string/app_name" 
     android:icon="@drawable/ic_launcher" 
     android:theme="@style/Theme.MyTheme"> 

それだこと。完了しました。

+0

これは機能しません。 –

+0

@ Nouman Ghaffar、これは、例えば 'RecyclerView'のスクロールバーをどうして無効にするのでしょうか? – azizbekian

+0

更新された回答を確認@Suraj –

関連する問題