在iOS中有flashScrollIndicators
方法UIScrollView
可以让滚动条像第一次显示视图时一样短暂闪烁。
我在文档中找不到与此等效的 Android,以使滚动条在可滚动视图(ScrollView、ListView、WebView 等)上短暂闪烁。我尝试在视图上发出一个requestLayout()
,但这没有用。
我问这个的原因是因为我的视图包含在 a 中ViewPager
,当用户滑动到不同的页面时,该页面通常已经被绘制并且不会闪烁滚动条。
在这里回答我自己的问题
该方法被调用awakenScrollBars
并在View
类中定义。不幸的是,方法是protected
您必须继承 ScrollView、ListView 或任何您希望其滚动条闪烁的视图。
或者,公共方法也会闪烁滚动条,但前提是滚动位置实际发生了变化。所以 fe不起作用,只有在视图不在顶部时才起作用。scrollTo
scrollBy
listView.scrollBy(0,0)
listView.scrollTo(0,0)
如果无法对视图进行子类化,则以下方法似乎可行,尽管不可否认这是一种 hack:
view.setVisibility(View.INVISIBLE);
view.setVisibility(View.VISIBLE);
将视图设置为不可见,然后立即再次可见似乎不会导致任何重绘,但它具有触发滚动条闪烁的副作用。