android用网格视图组件,Android开发10.3:UI组件GridView网格视图

此博客展示了Android中网格视图组件的使用。通过创建List对象存储图片资源,使用SimpleAdapter将数据与GridView绑定,还为GridView添加了列表项选中和单击的监听器,实现图片的显示功能,最后提到了调试效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package com.example.android_gridview;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

import android.os.Bundle;

import android.app.Activity;

import android.view.Menu;

import android.view.View;

import android.widget.AdapterView;

import android.widget.AdapterView.OnItemClickListener;

import android.widget.AdapterView.OnItemSelectedListener;

import android.widget.GridView;

import android.widget.ImageView;

import android.widget.SimpleAdapter;

public class MainActivity extends Activity {

GridView grid;

ImageView image;

int[] imageIds = new int[]

{

R.drawable.one,

R.drawable.two,

R.drawable.three,

R.drawable.four,

R.drawable.one_one,

R.drawable.two_two,

R.drawable.three_three,

R.drawable.four_four

};

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

//创建一个List对象,List对象的元素是Map

List> listItems = new ArrayList>();

for(int i = 0 ; i < imageIds.length; i++){

Map listItem = new HashMap();

listItem.put("image", imageIds[i]);

listItems.add(listItem);

}

//获取显示图片的 ImageView

image = (ImageView) findViewById(R.id.image01);

grid = (GridView) findViewById(R.id.grid01);

//创建一个SimpleAdapter

SimpleAdapter simpleAdapter = new SimpleAdapter (this,

listItems,R.layout.cell,new String[] {"image"},new int[] {R.id.image1});

//为GridView设置Adapter

grid.setAdapter(simpleAdapter);

//添加列表项被选中的监听器

grid.setOnItemSelectedListener(new OnItemSelectedListener()

{

@Override

public void onItemSelected(AdapterView> parent, View view,

int position, long id) {

// TODO Auto-generated method stub

//显示当前被选中的图片

image.setImageResource(imageIds[position]);

}

@Override

public void onNothingSelected(AdapterView> arg0) {

// TODO Auto-generated method stub

}

});

//添加列表被单击的监听器

grid.setOnItemClickListener(new OnItemClickListener()

{

@Override

public void onItemClick(AdapterView> parent, View view, int position,

long id) {

// TODO Auto-generated method stub

//显示被单击的图片

image.setImageResource(imageIds[position]);

}

});

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

// Inflate the menu; this adds items to the action bar if it is present.

getMenuInflater().inflate(R.menu.main, menu);

return true;

}

}

调试效果

1bdc7f04f8af48d7ada198916838d293.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值