1.ListView的Overscroll效果
Overscroll(边界回弹)效果-- android2.3新增的功能,也就是当滑动到边界的时候,如果再滑动,就会有一个边界就会有一个发光效果。
* Api介绍:
* public void setOverScrollMode (int mode)
* 为视图设置过滚动模式。有效的过滚动模式有 OVER_SCROLL_ALWAYS(默认值)、
* OVER_SCROLL_IF_CONTENT_SCROLLS(视图内容大于容器时允许过滚动)、和 OVER_SCROLL_NEVER.
* 只有当视图可以滚动时,才可以设置视图的过滚动模式.
关于OverScroll?请参考:http://blog.csdn.net/zouxueping/article/details/6832805
默认的效果并不好,很多人都想去掉,这里介绍如何去除此效果?
(Android中如何消除ScrollView滚动到顶部或底部时的边框?)
如何去掉这个效果呢?请看第2条
2. ListView顶部和底部滚(拖)动出现阴影(也就是Overscroll效果)解决方案
在listview中滑动到顶部或者是底部的时候,在默认的情况下,是会有黄色或者蓝色的阴影出现。这个该怎么解决呢,请往下看:
【解决方案1】在不同的版本上解决的方法是不同的,在2.3之前可以在listview的属性中通过设置Android:fadingEdge="none"来解决问题,但是在2.3及以上这个是不行的,这里要在 xml中设置属性 Android :overScrollMode=”never”,也可以通过代码来设置模式,禁止其阴影的出现,以免影响美观。
【解决方案2】请看代码:需要新建个MyListView.java文件,然后在xml布局中引用
public class MyListView extends ListView {
public MyListView(Context context, AttributeSet attrs) {
super(context, attrs);
if (Integer.parseInt(Build.VERSION.SDK) >= 9) {
this.setOverScrollMode(View.OVER_SCROLL_NEVER);
}
}
}
<com.jhq.MyListView
android:id="@+id/_lv"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@null"
android:cacheColorHint="#00000000"
android:divider="@null"
android:listSelector="@drawable/chat_listitem"
android:scrollbars="vertical"
android:fadingEdge="none"
android:transcriptMode="alwaysScroll" />
3. ListView刷新后自动滚到最底部
mList.setSelection(mList.getAdapter().getCount()-1);
http://blog.csdn.net/libaineu2004/article/details/26582383