设置Gridview的水平间距,使Gridview布局水平充满屏幕
2018-04-02 17:56
1866 查看
今天想实现一个根据Gridview的item布局大小,设置Gridview的水平间距,使Gridview布局能水平充满屏幕,我们需要实现的效果是,用户如果刚开始没有选择上传截图的时候,是需要显示下图的照相机图片的,实现效果图如下:
本来想动态计算Gridview的宽度和item的宽度,然后取差/2来设置Gridview的水平间距,效果不理想。
后想到Gridview有个属性android:stretchMode,可以用来设置Gridview中的条目以什么缩放模式去填充剩余空间,可选值为:none、spacingWidth、columnWidth、spacingWidthUniform,所以决定通过stretchMode属性来实现上面的效果。
<GridView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:numColumns="4"
android:scrollbars="none"
android:verticalSpacing="10dp"
android:columnWidth="68dp"
android:stretchMode="spacingWidth"/>注意:因为要先显示上图的照相机图片,所以其中有一个android:columnWidth属性需要配合android:stretchMode属性才能显示出来,要不然照相机图片没办法显示(原因我还不知道,先实现了效果
),这里我设置的跟我的item布局的宽高是一样的,就是68dp,如果设置的跟item宽高不一致,布局会往中间压缩,效果大家可以试试。
本来想动态计算Gridview的宽度和item的宽度,然后取差/2来设置Gridview的水平间距,效果不理想。
后想到Gridview有个属性android:stretchMode,可以用来设置Gridview中的条目以什么缩放模式去填充剩余空间,可选值为:none、spacingWidth、columnWidth、spacingWidthUniform,所以决定通过stretchMode属性来实现上面的效果。
<GridView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:numColumns="4"
android:scrollbars="none"
android:verticalSpacing="10dp"
android:columnWidth="68dp"
android:stretchMode="spacingWidth"/>注意:因为要先显示上图的照相机图片,所以其中有一个android:columnWidth属性需要配合android:stretchMode属性才能显示出来,要不然照相机图片没办法显示(原因我还不知道,先实现了效果
),这里我设置的跟我的item布局的宽高是一样的,就是68dp,如果设置的跟item宽高不一致,布局会往中间压缩,效果大家可以试试。
相关文章推荐
- android-在GridView视图中设置水平滚动的图像布局
- 字体大小sp的适配、不同屏幕密度下dp的适配、布局的适配以及横线的设置
- Android Studio App设置线性布局LinerLayout控件占屏幕长宽比例
- [置顶] css设置标签的水平与垂直居中,定位与弹性盒布局的的结合
- GridView子item正方形充满屏幕简单实现
- textView 基本用法 设置行间距 设置文字大小重量 文字布局
- GridView嵌套HorizontalScrollView,GridView布局参数设置
- 在xml布局文件中,我们既可以设置px,也可以设置dp(或者dip)。一般情况下,我们都会选择使用dp,这样可以保证不同屏幕分辨率的机器上布局一致。但是在代码中,如何处理呢?很多控件的方法中都只提供了
- 纯原生打造GridView单行横向滑动(宽度自适应在父布局居中),手机屏幕px和dp的互换方法,附禁止滑动的自定义方法
- android百分比库扩展,支持布局宽高比及子控件宽高比设置,支持布局圆角、圆形及描边,屏幕适配好帮手
- ScrollView嵌套GridView,自定义Gridview动态设置Item的高度,屏幕适配
- TextView 字体水平滚动,走马观灯 和 间距设置
- DIV布局的设置(水平或者垂直居中)
- Duilib设置水平、垂直布局推拉改变大小
- GridView 设置 item 间距的方法
- 关于gridview水平居中,平均布局
- 【Qt开发】布局控件之间的间距设置
- CSS布局:设置图片在DIV中上下左右居中(水平和垂直都居中)
- Android Studio App设置线性布局LinerLayout控件垂直/水平方向排列
- 设置dialog样式的activity宽度充满父布局