在 HorizontalScrollView
的末尾,会出现一盏灯,表示滚动内容已经结束。有没有办法改变这种颜色?它在我的手机中显示为黄色。我已经将 HorizontalScrollView
的背景色设置为我想要的颜色,但是这个“滚动结束”灯不是我想要的。
编辑:
我刚刚注意到,由于 onOverScrollMode
(自 API 级别 9 - 请参阅 this link),此灯会出现。有没有办法设置 OVER_SCROLL_NEVER 并保持与 Eclair 版本的兼容性?或者更好:设置此灯的颜色(如果出现)?
最佳答案
不幸的是,没有简单的方法来设置 OverScroll EdgeEffect 的颜色。
要安全地设置 OVER_SCROLL_NEVER 并保持与早期 SDK 版本的兼容,您可以内省(introspection) setOverScrollMode 方法,如果找到则调用它。 (在 3.1 和 2.2 上测试)
setContentView(R.layout.main);
// find scroll view
HorizontalScrollView hscroll = (HorizontalScrollView)findViewById(R.id.hscroll);
try {
// look for setOverScrollMode method
Method setOverScroll = hscroll.getClass().getMethod("setOverScrollMode", new Class[] { Integer.TYPE } );
if (setOverScroll != null) {
try {
// if found call it (OVER_SCROLL_NEVER == 2)
setOverScroll.invoke(hscroll, 2);
} catch (InvocationTargetException ite) {
} catch (IllegalAccessException ie) {
}
}
} catch (NoSuchMethodException nsme) {
}
关于android - 改变 HorizontalScrollView 的灯光颜色 - OverScrollMode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8647131/