ScrollView下嵌套多个列表视图如(ListView、Gridview等)引发的一系列问题及解决办法

来源:互联网 发布:js 边框 编辑:程序博客网 时间:2024/06/07 14:09

    每天进步一点!!!


 项目里一个页面里嵌套了一个listview和一个GridView,于是引发了一系列问题,通过看各种资料的办法解决了,这里总结一下。


问题一,listview或者Gridview显示不全

             办法:自定义listview或gridview,重写下面这个方法,两种效果,完美解决该问题。


@Overrideprotected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {    //一,设置为Integer.MAX_VALUE>>2 是listview全部展开    int measureSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE>>2, MeasureSpec.AT_MOST);//二,设置为600是设置listview的高度只能有600 不全部展开   实现可以滑动的效果//        int measureSpec1 = MeasureSpec.makeMeasureSpec(600, MeasureSpec.AT_MOST);    super.onMeasure(widthMeasureSpec, measureSpec);}

问题二,有时候进入该页面,焦点不在顶部。

             办法:找到位于页面顶部的view,比如是个Textview.让其获得焦点,代码如下

 

//通过setFocusable和setFocusableInTouchMode方法获得焦点,最后通过requestFocus执行。        tv.setFocusable(true);        tv.setFocusableInTouchMode(true);        tv.requestFocus();

 问题三,gridview 的item布局里有图片和文字描述,当每一个Item文字字数不同,造成最后两个item显示不全

             办法一。TextView可以设置XML属性,最多显示行数,省略号代替,每行显示字数,如下

                    

android:ellipsize="end"android:maxEms="12"android:maxLines="3"

            办法二,指定Textview的高度(不推荐)

      

阅读全文
0 0
原创粉丝点击