Android取消RecyclerView、ListView、ScrollView、HorizontalScrollView滑動到邊緣閃現灰白色水波紋動畫
标準的Android RecyclerView、ListView、ScrollView、HorizontalScrollView滑動到邊緣,會閃現灰白色水波紋動畫,以這樣大的動畫效果提示使用者已經滑動到邊緣,沒法再滑動了。對于這種增強體驗是一個很好的設計效果,但是有時候可能不需要這樣的效果,取消的方法是在配置RecyclerView、ListView、ScrollView、HorizontalScrollView的xml布局裡面,設定:
android:overScrollMode="never"
即可取消。
如果要在上層Java代碼處理,也是可以,比如在Android官方的RecyclerView實作代碼中:
/**
* Set the over-scroll mode for this view. Valid over-scroll modes are
* {@link #OVER_SCROLL_ALWAYS} (default), {@link #OVER_SCROLL_IF_CONTENT_SCROLLS}
* (allow over-scrolling only if the view content is larger than the container),
* or {@link #OVER_SCROLL_NEVER}.
*
* Setting the over-scroll mode of a view will have an effect only if the
* view is capable of scrolling.
*
* @param overScrollMode The new over-scroll mode for this view.
*/
public void setOverScrollMode(int overScrollMode) {
if (overScrollMode != OVER_SCROLL_ALWAYS &&
overScrollMode != OVER_SCROLL_IF_CONTENT_SCROLLS &&
overScrollMode != OVER_SCROLL_NEVER) {
throw new IllegalArgumentException("Invalid overscroll mode " + overScrollMode);
}
mOverScrollMode = overScrollMode;
}
在這裡設定相應的mode一樣可以。