Rose、咩  

九宫格 多个格子显示图片

本次任务是

利用GridView和SimpleAdapter来实现九宫格

就是好多图片整齐的显示在页面

让我想到了魔方....好想玩

还是谈正事 布局代码就不详写了 直接贴上主要的小部分

<GridView
        android:id="@+id/main_grid"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:numColumns="3"
        android:verticalSpacing="0dp">
<ImageView
        android:id="@+id/ima_oo"
        android:layout_width="120dp"
        android:layout_height="120dp"
        android:src="@drawable/img1"
        />

easy easy


来贴Java代码部分

也就十几行嘛

还偏偏碰到了小问题

准备数据源

然后创建适配器并绑定

最后添加监听器

嗯 看起来不是很难嘛

public class MainActivity extends AppCompatActivity {
private List<Map<String,Object>>listDate = null;
    private int[]imgId={R.drawable.img1,R.drawable.img2,R.drawable.img3,R.drawable.img4,
            R.drawable.img5,R.drawable.img6,R.drawable.img7,R.drawable.img8,
            R.drawable.img9,R.drawable.img10,R.drawable.img11,R.drawable.img12};
    public ArrayList<Map<String,Object>>getDate(){
        listDate = new ArrayList<>();
        for (int a = 0; a < imgId.length; a++) {
            HashMap<String, Object> map = new HashMap<>();
            map.put("img", imgId[a]);
            listDate.add(map);
        }
        return (ArrayList<Map<String, Object>>) listDate;
    }
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        GridView gridView = (GridView) findViewById(R.id.main_grid);
        SimpleAdapter adapter = new SimpleAdapter(
                MainActivity.this,
                getDate(),
                R.layout.image_item,
                new String[]{"img"},
                new int[]{R.id.ima_oo});
        gridView.setAdapter(adapter);

}

好 OK 就这样愉快的结束了

说实话 写博客 越写越简单短小 这叫浓缩就是精华么 哈哈哈

posted on 2017-05-08 22:52  Rose、咩  阅读(551)  评论(0编辑  收藏  举报