一个相册
activity_main.xml中
<?xml version="1.0" encoding="utf-8"?> <GridLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/layout" android:orientation="horizontal" android:rowCount="3" android:columnCount="4" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <!--android:orientation="horizontal" 水平 android:rowCount="3" android:columnCount="4" 三行--> </GridLayout>
MainActivity中
package com.example.administrator.xmljava; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.ViewGroup; import android.widget.GridLayout; import android.widget.ImageButton; import android.widget.ImageView; public class MainActivity extends AppCompatActivity { private ImageView[] img = new ImageView[12]; //保存image view组件的数组 private int[] imagePath = new int[]{ //在这指定图片资源 R.mipmap.img01, R.mipmap.img02, R.mipmap.img03, R.mipmap.img04, R.mipmap.img05, R.mipmap.img06, R.mipmap.img07, R.mipmap.img08, R.mipmap.img09, R.mipmap.img10, R.mipmap.img11, R.mipmap.img12, }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); GridLayout gridLayout = findViewById(R.id.layout);//获取网格布局管理器 for (int i = 0; i < imagePath.length; i++) { img[i] = new ImageView(MainActivity.this); //创建imageview组件,并赋给img // 数组 } img[i].setImageResource(imagePath[i]); //为组件设置图片,用imgpath作为路径 img[i].setPadding(2, 2, 2, 2);//设置img组件的内边距 // 设置图片的宽度和高度 // 定义一个LayoutParams的对象,params参数的意思 // 通过这个对象,设置宽和高 // 把参数设置到img中 ViewGroup.LayoutParams params = new ViewGroup.LayoutParams(300,120); img[i].setLayoutParams(params); // 记得还要把它添加到布局管理器中,如果不添加,则显示不出来 gridLayout.addView(img[i]); } } }