`
antkingwei
  • 浏览: 40818 次
  • 性别: Icon_minigender_1
  • 来自: 日照
社区版块
存档分类
最新评论

Android GridView,Gallery动态更新数据

阅读更多



 

 

package com.android.wei.zidingyi.adapter;

import android.app.Activity;

import android.os.Bundle;
import android.view.Window;
import android.view.WindowManager;
import android.widget.Gallery;
import android.widget.GridView;

import java.util.*;


public class MyActivity extends Activity {
	  
	    private Gallery gallery;
	    private GridView gridView;
	    private ImageAdapter listViewAdapter;
	    public static  ImageAdapterView imageAdapterView;
	    private List<Map<String,Object>> listItems;
	    private Integer[] imgeIDs = {
	    	R.drawable.niao,R.drawable.niao,R.drawable.rui,R.drawable.rui,
	    	R.drawable.ning,R.drawable.ning
	    };
	    private String[] goodsNames={
	    	"土豆丝","土豆块","土豆泥","红烧土豆",
	    	"麻辣土豆","清蒸土豆"
	    };
	    private String[] goodsDetails={
	    	"土豆丝:便宜又好吃",	"土豆丝:便宜又好吃",	"土豆丝:便宜又好吃",	
	    	"土豆丝:便宜又好吃",	"土豆丝:便宜又好吃",	"土豆丝:便宜又好吃",
	    };
	    private int[] money={
	    	2,3,3,10,8,13	
	    };
	   
	    public void onCreate(Bundle savedInstanceState) {
	        super.onCreate(savedInstanceState);
	        /**全屏显示**/
	        requestWindowFeature(Window.FEATURE_NO_TITLE);
	        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
	          WindowManager.LayoutParams.FLAG_FULLSCREEN);
	        
	        setContentView(R.layout.main);
	        gridView=(GridView) this.findViewById(R.id.gridView1);
	        imageAdapterView = new ImageAdapterView(this);
	        gridView.setAdapter(imageAdapterView);
	        gallery = (Gallery) this.findViewById(R.id.gallery1);
	        listItems = getListItems();
	        listViewAdapter = new ImageAdapter(this,listItems);
	        gallery.setAdapter(listViewAdapter);
	       
	    }

	    	
	  
	    private List<Map<String,Object>> getListItems(){
	    	List<Map<String,Object>> listItems = new ArrayList<Map<String,Object>>();
	    	for(int i=0;i<goodsNames.length;i++){
	    		Map<String,Object> map = new HashMap<String,Object>();
	    		map.put("image", imgeIDs[i]);
	    		map.put("title", goodsNames[i]);
	    		map.put("info", money[i]+"元");
	    		
	    		listItems.add(map);
	    	}
	    	return listItems;
	    }

}

 然后是Gallery的

 

package com.android.wei.zidingyi.adapter;

import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Button;

import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;

import java.util.*;






public class ImageAdapter extends BaseAdapter{
    private Context context;
   
    
    private List<Map<String,Object>> listItems;
    
    private LayoutInflater listContainer;
    
    private boolean[] hasChecked;
    public final class ListItemView{
    	public ImageView image;
    	public TextView title;
    	public TextView info;
    	
    
    	public Button add;
    }
    
    public ImageAdapter(Context context,List<Map<String,Object>> listItems){
    	this.context = context;
    	listContainer = LayoutInflater.from(context);
    	this.listItems = listItems;
    	hasChecked = new boolean[getCount()];
    }
	@Override
	public int getCount() {
		// TODO Auto-generated method stub
		return listItems.size();
	}

	@Override
	public Object getItem(int position) {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public long getItemId(int position) {
		// TODO Auto-generated method stub
		return 0;
	}
	
	
	

	@Override
	public View getView(int position, View convertView, ViewGroup parent) {
	    final int  selectId = position;
		ListItemView listItemView = null;
		if(convertView ==null){
			listItemView = new ListItemView();
			convertView = listContainer.inflate(R.layout.list_item, null);
			//获得控件对象
			listItemView.image =(ImageView) convertView.findViewById(R.id.imageitem);
			listItemView.title =(TextView) convertView.findViewById(R.id.textview);
			listItemView.info =(TextView) convertView.findViewById(R.id.textview1);
			listItemView.add =(Button) convertView.findViewById(R.id.button1);
			
		   //设置空间集到convertView
			convertView.setTag(listItemView);
		}else{
			listItemView = (ListItemView) convertView.getTag();
		}
		//设置文字图片
		listItemView.image.setBackgroundResource((Integer)listItems.get(position).get("image"));
		listItemView.title.setText((String)listItems.get(position).get("title"));
		listItemView.info.setText((String) listItems.get(position).get("info"));
        listItemView.add.setOnClickListener(new View.OnClickListener() {
			
			@Override
			public void onClick(View v) {
				Map<String,Object> map = new HashMap<String,Object>();
	    		map.put("image", listItems.get(selectId).get("image"));
	    	
	    		ImageAdapterView.menuList.add(map);
		       MyActivity.imageAdapterView.notifyDataSetChanged();
			}
		});
		
		
		return convertView;
	}

}

 最后GridView的

 

package com.android.wei.zidingyi.adapter;

import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.Toast;

import java.util.*;

public class ImageAdapterView extends BaseAdapter{
	private Context context;
	
	private LayoutInflater layoutInflater;
	
    public static List<Map<String,Object>> menuList = new ArrayList<Map<String,Object>>();
	
    public static class ItemListView{
    	public ImageButton image;
    }
    public ImageAdapterView(Context context){
		this.context = context;
		layoutInflater = LayoutInflater.from(context);
		
	}
	public int getCount() {
		// TODO Auto-generated method stub
		return menuList.size();
	}

	@Override
	public Object getItem(int position) {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public long getItemId(int position) {
		// TODO Auto-generated method stub
		return 0;
	}

	@Override
	public View getView(int position, View convertView, ViewGroup parent) {
		ItemListView itemListView = null;
		if(convertView==null){
			itemListView = new ItemListView();
			convertView = layoutInflater.inflate(R.layout.item_list1, null);
			
			itemListView.image=(ImageButton) convertView.findViewById(R.id.menuImage);
			convertView.setTag(itemListView);
		}else {
			itemListView=(ItemListView)convertView.getTag();
		}
	   itemListView.image.setBackgroundResource((Integer)menuList.get(position).get("image"));
	   itemListView.image.setOnClickListener(new View.OnClickListener() {
		
		@Override
		public void onClick(View v) {
			// TODO Auto-generated method stub
			Toast.makeText(context, "触发成功", Toast.LENGTH_SHORT).show();
		}
	});
		return convertView;
	}

}

 还有几个配置文件,就不贴出来了,如果不行在联系我,留言,或者到这个群里来要:150086842

  • 大小: 43.6 KB
  • 大小: 58 KB
分享到:
评论

相关推荐

    Android GridView,Gallery动态更新数据(整理自网络)

    Android GridView,Gallery动态更新数据(整理自网络)

    android控件ListView. GridView.gallery应用

    GridView添加数据源和ListView也是SimpleAdpater 在数据源适配器知识点上面,我们可以自己定义一个数据源适配器,要继承BaseAdapter,实现getView的方法 画廊控件:gallery imageswitch HorizontalScrollView,在一个...

    android开发揭秘PDF

    6.1 Android数据存储初探 6.2 数据存储之Shared Preferences 6.3 数据存储之Files 6.4 数据存储之Network 6.5 Android数据库编程 6.5.1 SQLite简介 6.5.2 SQLite编程详解 6.5.3 SQLiteOpenHelper应用 6.6 数据共享...

    android开发资料大全

    android用户界面之GridView教程实例汇总 android用户界面之SurfaceView教程实例汇总 android用户界面之Notification教程实例汇总 android用户界面之TextView教程实例汇总 android用户界面之ScrollView教程实例汇总 ...

    android gallery

    它的主要用途是将一组数据 传到像 ListView、 Spinner、 Gallery 及 GridView 等 ... 6页 浏览:2705次连续移动的图片浏览器

    《Android应用开发揭秘》附带光盘代码.

     6.1 Android数据存储初探  6.2 数据存储之Shared Preferences  6.3 数据存储之Files  6.4 数据存储之Network  6.5 Android数据库编程  6.5.1 SQLite简介  6.5.2 SQLite编程详解  6.5.3 SQLiteOpenHelper...

    Android应用开发揭秘pdf高清版

    《Android应用开发揭秘》内容全面,不仅详细讲解了Android框架、Android组件、用户界面开发、游戏开发、数据存储、多媒体开发和网络开发等基础知识,而且还深入阐述了传感器、语音识别、桌面组件开发、Android游戏...

    Android开发案例驱动教程 配套代码

    10.2 Android数据存储概述 205 10.3 本地文件 205 10.3.1 访问SD卡 207 10.3.2 访问应用文件目录 212 10.4 SQLite数据库 216 10.4.1 SQLite数据类型 216 10.4.2 Android平台下管理SQLite数据库 216 10.5 编写...

    《Android应用开发揭秘》源码

     6.1 Android数据存储初探  6.2 数据存储之Shared Preferences  6.3 数据存储之Files  6.4 数据存储之Network  6.5 Android数据库编程  6.5.1 SQLite简介  6.5.2 SQLite编程详解  6.5.3 SQLiteOpenHelper...

    老罗android视频开发源码和ppt经典

    1.5 android使用全局变量传递数据 1.6 android使用剪切板传递数据 1.7 意图传递数据的第一种方式 1.8 android使用静态变量传递数据 1.9 意图返回结果 二、Android常用布局介绍 2.1 android常用布局属性的介绍 2.2 ...

    android开发入门与实战(下)

    第8章 移动信息仓库——Android的数据存储操作 8.1 Android数据存储概述 8.2 轻轻地我保护——SharedPreferences存储 8.3 谁的文件,谁主宰——文件存储 8.4 打造自己的数据库存储——SQLite存储方式 8.4.1 Android...

    Android入门到精通源代码.

    第9章 Android中的数据存储 9.1 使用Preferences存储数据 9.1.1 访问Preferences的API 9.1.2 使用XML存储Preferences数据 9.2 使用文件存储数据 9.2.1 访问应用中的文件数据 9.2.2 访问设备中独立的文件数据 9.3 ...

    Google Android SDK开发范例大全(PDF高清完整版1)(4-1)

    4.18 动态文字排版——GridView与ArrayAdapter设计 4.19 在Activity里显示列表列表——ListView的布局 4.20 以动态列表配置选项——ListActivity与Menu整合技巧 4.21 查找程序根目录下所有文件——JavaI/O与...

    Google Android SDK开发范例大全(PDF完整版4)(4-4)

    4.18 动态文字排版——GridView与ArrayAdapter设计 4.19 在Activity里显示列表列表——ListView的布局 4.20 以动态列表配置选项——ListActivity与Menu整合技巧 4.21 查找程序根目录下所有文件——JavaI/O与...

    android开发入门与实战(上)

    第8章 移动信息仓库——Android的数据存储操作 8.1 Android数据存储概述 8.2 轻轻地我保护——SharedPreferences存储 8.3 谁的文件,谁主宰——文件存储 8.4 打造自己的数据库存储——SQLite存储方式 8.4.1 Android...

    《Google Android开发入门与实战》.pdf

    第8章 移动信息仓库——android的数据存储操作 136 8.1 android数据存储概述 136 8.2 轻轻地我保护——sharedpreferences存储 136 8.3 谁的文件,谁主宰——文件存储 140 8.4 打造自己的数据库存储——...

    Google Android SDK开发范例大全(PDF高清完整版3)(4-3)

    4.18 动态文字排版——GridView与ArrayAdapter设计 4.19 在Activity里显示列表列表——ListView的布局 4.20 以动态列表配置选项——ListActivity与Menu整合技巧 4.21 查找程序根目录下所有文件——JavaI/O与...

Global site tag (gtag.js) - Google Analytics