android网格布局

属性 功能
numColumns="auto_fit 自适应行数
android:verticalSpacing 垂直方向距离
java方法 功能 值的含义
LayoutParams. 封装了Layout的位置、高、宽等信息 1、一个确定的 2、FILL_PARENT,即填满(和父容器一样大小);3,WRAP_CONTENT,即包裹住组件就好。

SetScaleType方法。

方法 功能
SetScaleType(ImageView.ScaleType.CENTER) 按图片的原来size居中显示,当图片长/宽超过View的长/宽,则截取图片的居中部分显示
SetScaleType(ImageView.ScaleType.CENTER_CROP) 按比例扩大图片的size居中显示,使得图片长(宽)等于或大于View的长(宽)
setScaleType(ImageView.ScaleType.CENTER_INSIDE) 将图片的内容完整居中显示,通过按比例缩小或原来的size使得图片长/宽等于或小于View的长/宽
setScaleType(ImageView.ScaleType.FIT_CENTER) 把图片按比例扩大/缩小到View的宽度,居中显示
FIT_START, FIT_END在图片缩放效果上与FIT_CENTER一样, 只是显示的位置不同,FIT_START是置于顶部,FIT_CENTER居中,FIT_END置于底部。
FIT_XY 不按比例缩放图片,目标是把图片塞满整个View

效果图:
android网格布局_第1张图片


       
   
public class MainActivity extends Activity{
	private int[] incon = {R.drawable.app_icon,R.drawable.banner_1,R.drawable.banner_2,R.drawable.app_icon,
			R.drawable.banner_1,R.drawable.banner_2,R.drawable.app_icon,R.drawable.banner_1,R.drawable.banner_2};
	
	 @Override
	    protected void onCreate(Bundle savedInstanceState) {
	        super.onCreate(savedInstanceState);
	        setContentView(R.layout.activity_main);
	        GridView gridView = (GridView)findViewById(R.id.gridView);
	        gridView.setAdapter(new imgApdapter(this));
	        
	 }
	
	public class imgApdapter extends BaseAdapter{
		private Context content;
		public imgApdapter(Context c){
			content=c;
		}
		
		@Override
		public int getCount() {
			// TODO Auto-generated method stub
			return incon.length;
		}

		@Override
		public Object getItem(int arg0) {
			
			return null;
		}

		@Override
		public long getItemId(int arg0) {
			
			return 0;
		}

		@Override
		public View getView(int position, View convertView, ViewGroup view) {
			ImageView imageView;
			if(convertView==null){
				imageView= new ImageView(content);
				//设置控件的宽和高
				imageView.setLayoutParams(new GridView.LayoutParams(100,90));
//				按比例扩大图片的size居中显示,使得图片长(宽)等于或大于View的长(宽)
				imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
				
			}else{
				imageView = (ImageView)convertView;
			}
			imageView.setImageResource(incon[position]);
			//返回一个图像布局。
			return imageView;
		}
		
	}
}

你可能感兴趣的:(android)