轮播图显示不全
我弄了4张图片轮播,为什么只有两张显示
我弄了4张图片轮播,为什么只有两张显示
2017-08-03
感觉你应该是测量那部分代码写错了或者漏写了;代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | @Override //测量,先测量子视图的宽度和高度,然后求出ViewGroup的宽度和高度和 protected void onMeasure( int widthMeasureSpec, int heightMeasureSpec) { // TODO Auto-generated method stub super .onMeasure(widthMeasureSpec, heightMeasureSpec); //1.求出子视图的个数 children=getChildCount(); //2.求出子视图的宽和高 if (children== 0 ){ setMeasuredDimension( 0 , 0 ); //重新设置宽高 } else { measureChildren(widthMeasureSpec, heightMeasureSpec); //viewgroup的高度就是第一个子视图的高度,宽度就是所有子视图宽度之和 View view=getChildAt( 0 ); //3.求出ViewGroup的宽和高 view_height=view.getMeasuredHeight(); view_width=view.getMeasuredWidth(); int width=view_width*children; //ViewGroup的总宽度 setMeasuredDimension(width, view_height); } } |
举报