zoukankan      html  css  js  c++  java
  • 禁用滚动视图ListView、ViewPager、ScrollView、HorizontalScrollView、WebView边界颜色渐变

    禁用滚动视图ListView、ViewPager、ScrollView、HorizontalScrollView、WebView边界颜色渐变

    ListView、ViewPager、ScrollView、HorizontalScrollView、WebView等滚动试图控件在高版本(一般是2.3及以上版本)上边界会显示一个渐变的颜色,下面是去掉这些颜色的方法:

    1、ListView的父类AbsListView.java中有以下的一个方法:

    @Override

    public void setOverScrollMode(int mode) {

    if (mode != OVER_SCROLL_NEVER) {

    if (mEdgeGlowTop == null) {

    Context context = getContext();

    mEdgeGlowTop = new EdgeEffect(context);

    mEdgeGlowBottom = new EdgeEffect(context);

    }

    } else {

    mEdgeGlowTop = null;

    mEdgeGlowBottom = null;

    }

    super.setOverScrollMode(mode);

    }

    在低版本上面没有这个方法,就是这个mEdgeGlowTopmEdgeGlowBottom这两个货导致的边界渐变颜色。解决方法如下:你可以在自定义的ListView中调用,也可以在Activity或者Fragment的ListView属性调用:

    try {

        Method method = getClass().getMethod("setOverScrollMode", int.class);

        Field field = getClass().getField("OVER_SCROLL_NEVER");

        if(method != null && field != null){

            method.invoke(this, field.getInt(View.class));

        }

    } catch (Exception e) {

        e.printStackTrace();

    }

    2、ScrollView、HorizontalScroll以及WebView的情况和ListView相同,处理方法也一样。

    3、ViewPager有些特殊,需要特殊处理,请参考我的这篇博客:http://www.cnblogs.com/xinye/p/3142704.html

  • 相关阅读:
    [转]vs2010 快捷键大全
    oracle 分组排序
    jqGrid如何实现单选。
    WCF 服务调用RFC 出现异常
    c语言修饰符总结const、static、volatile、auto、extern、register
    BL和LDR——位置无关码和位置相关码
    原码,反码,补码(二)
    原码补码反码
    C语言内存分布
    ARM总线架构(S3C2440)
  • 原文地址:https://www.cnblogs.com/xinye/p/3205772.html
Copyright © 2011-2022 走看看