Jaa*_*tum 9 android scrollbar scrollview
在iOS中flashScrollIndicators,UIScrollView类上的方法允许您使滚动条像第一次显示视图时一样短暂闪烁.
我在文档中找不到与此等效的Android,使滚动条在可滚动视图(ScrollView,ListView,WebView等)上短暂闪烁.我尝试requestLayout()在视图上发布一个,但是没有用.
我问这个的原因是因为我的视图包含在a中ViewPager,当用户滑动到不同的页面时,该页面通常已经被绘制并且不会闪烁滚动条.
在这里回答我自己的问题
该方法被调用awakenScrollBars并在View类中定义.不幸的是,这个方法是protected你必须子类化ScrollView,ListView或任何你希望它的滚动条闪烁的视图.
另外,在公共方法scrollTo和scrollBy还闪烁滚动条,但只有当滚动位置实际上已经改变了.所以fe listView.scrollBy(0,0)不会起作用,listView.scrollTo(0,0)只有在视图不在顶部时才有效.
如果无法对视图进行子类化,则以下似乎可行,但不可否认它是一种黑客行为:
view.setVisibility(View.INVISIBLE);
view.setVisibility(View.VISIBLE);
Run Code Online (Sandbox Code Playgroud)
将视图设置为不可见然后立即再次显示似乎不会导致任何重绘,但它具有触发滚动条闪烁的副作用.
我通过强制它在彼此之后直接向上和向下滚动来解决类似的问题.
scrollView.scrollBy(0, 1);
scrollView.scrollBy(0, -1);
Run Code Online (Sandbox Code Playgroud)
这会导致滚动视图显示垂直滚动条,除非没有可滚动的内容.
| 归档时间: |
|
| 查看次数: |
1635 次 |
| 最近记录: |