android中ListView与ScrollView同时需要的处理

来源:互联网 发布:2.5年网络 编辑:程序博客网 时间:2024/06/10 12:07

在写android程序的时候,有时候会 用到listView和scrollview共存,比如一篇帖子,上头是主帖的内容,下面是一个回复的listview,想要吧二者放在一起,就要有一个scrollView来支持。

但是scrollView里面是不允许有系统里面的listview的,所以为了不冲突,我就重写了一个listview,重载了listview的构造和OnMeasure方法,这样就能避免和scrollView的冲突。


自定义的listview

public class ReplyListView extends ListView{public ReplyListView(Context context) {super(context);} public ReplyListView(Context context, AttributeSet attrs) {        super(context, attrs); } public ReplyListView(Context context, AttributeSet attrs,        int defStyle) {        super(context, attrs, defStyle); }@Overrideprotected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,        MeasureSpec.AT_MOST);super.onMeasure(widthMeasureSpec, expandSpec);}}

然后把xml布局文件中的listview换成自己定义的这个


不过这样完事后还有一个毛病,就是每次都是先显示listview的东西,如果你listview上面还有东西话,需要自己滑上去


在java代码里,加上一句话

mScrollView = (ScrollView)findViewById(R.id.bbs_view_topic_scroll_view);
mScrollView.smoothScrollTo(0, 0);

这样就能在最顶部了


这里是参考别人写的一个,比较不错http://www.apkbus.com/android-161576-1-1.html

0 0
原创粉丝点击