如何在 android 中更改 ViewPager 的过度滚动发光效果颜色?或者有没有办法通过主题更改整个应用程序的过度滚动颜色?
我知道 setOverScrollHeader 和页脚,但是这些在“逻辑上”当然不适用于水平模式下的 viewpager。
如何在 android 中更改 ViewPager 的过度滚动发光效果颜色?或者有没有办法通过主题更改整个应用程序的过度滚动颜色?
我知道 setOverScrollHeader 和页脚,但是这些在“逻辑上”当然不适用于水平模式下的 viewpager。
最简单的方法是colorPrimary
使用主题覆盖您的浏览器。
例如 :
在您的片段/活动中:
<androidx.viewpager.widget.ViewPager
android:id="@+id/viewpager"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:theme="@style/AppTheme.Viewpager" />
在您的文件中styles.xml
:
<style name="AppTheme.Viewpager" parent="AppTheme">
<item name="colorPrimary">#FFFFFF</item>
</style>
终于找到解决办法了!!
AndroidAlliance的一个很棒的库,叫做EdgeEffectOverride。
它可以轻松更改 ScrollView、ListView、ExpandableListView、GridView 和ViewPager的过度滚动颜色
解决方案 1:您可以在滚动侦听器内部调用方法 setBackground、setBackgroundColor 和 setAlpha 方法来创建自己的外观。
解决方案 2:您可以创建自己的 AlphaAnimation,它将在滚动侦听器中触发。
AlphaAnimation fadeIn = new AlphaAnimation( 0.0f , 1.0f ) ;
fadeIn.setDuration(1000);
yourViewPager.startAnimation(fadeIn);