黑马程序——Gridview的认识
来源:互联网 发布:狼顾之相真存在么 知乎 编辑:程序博客网 时间:2024/05/08 19:21
今天看了半天的那个java的视频,略枯燥,下午到晚上做了点android 的东西
看了一个程序的gridview布局的很好看的,于是自己就模仿写了起来
因为之前一直比较熟悉listview所以对gridview不是很熟悉。
自己摸索的写了起来:
这里是主布局文件
<?xml version="1.0" encoding="utf-8"?> <GridView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/gridview" android:numColumns="2" android:layout_width="fill_parent" android:layout_height="fill_parent" android:verticalSpacing="10dp" android:horizontalSpacing="10dp" android:stretchMode="columnWidth" android:gravity="center" android:background="@color/white" />
这里是子布局文件
<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="wrap_content" > <RelativeLayout android:layout_marginTop="5dp" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginLeft="5dp" android:layout_marginRight="5dp" android:background="@drawable/qq" android:orientation="horizontal" > <ImageView android:id="@+id/ItemImage" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:padding="4dp" android:scaleType="fitXY" android:src="@drawable/test5" /> <TextView android:id="@+id/ItemText" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/ItemImage" android:layout_gravity="center" android:gravity="center_horizontal" android:layout_marginTop="0dip" android:textColor="#ff0000" android:text="我在山东商务职业学院请你电击购买或者点赞支持" /> <Button android:layout_below="@+id/ItemText" android:id="@+id/shoucang" android:layout_width="70dp" android:layout_height="40dp" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" android:text="收藏" /> <Button android:layout_below="@+id/ItemText" android:id="@+id/goumai" android:layout_width="70dp" android:layout_height="40dp" android:layout_alignParentBottom="true" android:layout_alignParentRight="true" android:text="购买" /> </RelativeLayout></RelativeLayout>
于是自己还写了个baseadapter图片处理用的imageloader
但是我实际用的是simpleadapter下面是baseadaptr因为我没测试,就直接贴出源码
public class GridviewAdapter extends BaseAdapter {private ImageLoader imageLoader = null;privateDisplayImageOptions options = null;static class ViewHolder {ImageView ItemImage;TextView ItemText;Button shoucang;Button goumai;}private Context context;private ArrayList<Taokemodel> news;public GridviewAdapter(Context context,ArrayList<Taokemodel> news) {this.context = context;this.news = news;imageLoader = ImageLoader.getInstance();imageLoader.init(ImageLoaderConfiguration.createDefault(context));options = new DisplayImageOptions.Builder().displayer(new RoundedBitmapDisplayer(0xff000000, 10)).cacheInMemory().cacheOnDisc().build();}@Overridepublic int getCount() {return news.size();}@Overridepublic Taokemodel getItem(int position) {return news.get(position);}@Overridepublic long getItemId(int position) {return position;}@Overridepublic View getView(int position, View convertView, ViewGroup parent) {ViewHolder holder = null;if(convertView == null) {convertView = LayoutInflater.from(context).inflate(R.layout.taoke_item, null);holder = new ViewHolder();holder.ItemImage = (ImageView) convertView.findViewById(R.id.right_image);holder.ItemText = (TextView) convertView.findViewById(R.id.zhuti);convertView.setTag(holder);} else {holder = (ViewHolder) convertView.getTag();}imageLoader.displayImage(getItem(position).getHead(), holder.ItemImage, options);holder.ItemText.setText(getItem(position).getDidian());return convertView;}}
接着是主程序
public class NearByAcitivity extends Activity {private GridView gridView;private GridviewAdapter adapter;@Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO 自动生成的方法存根super.onCreate(savedInstanceState);setContentView(R.layout.gridviewlayout);ArrayList<HashMap<String, Object>> listImage=new ArrayList<HashMap<String,Object>>();for (int i = 0; i < 20; i++) {HashMap<String, Object> map=new HashMap<String, Object>();map.put("ItemImage", R.drawable.test5);map.put("ItemText", "这里是关于gridview的文字的描述的地方请点赞或者支持"+String.valueOf(i));listImage.add(map);SimpleAdapter saImageItems = new SimpleAdapter(this, // 没什么解释 listImage,// 数据来源 R.layout.gridview_item,// night_item的XML实现 // 动态数组与ImageItem对应的子项 new String[] { "ItemImage", "ItemText" }, // ImageItem的XML文件里面的一个ImageView,两个TextView ID new int[] { R.id.ItemImage, R.id.ItemText }); gridView=(GridView)findViewById(R.id.gridview);gridView.setAdapter(saImageItems);}//adapter=new GridviewAdapter(this, news);}}
------- android培训、java培训、IOS培训、.Net培训期待与您交流! ----------
0 0
- 黑马程序——Gridview的认识
- 黑马程序员——一个最基本的小程序以及自己对Java的认识
- 黑马程序员——[OC]01-OC的初步认识(简单程序)
- 黑马程序员——从迷茫的大学认识黑马
- 黑马程序员——OC基础学习(一)---第一个OC语言程序和面向对象编程的基本认识
- 黑马程序员——对于内存的认识
- 黑马程序员——OC的简单认识
- 黑马程序员——c语言函数的基本认识
- 黑马程序员——OC面向对象的基础认识
- 黑马程序员——认识JAVA
- 从头认识C—判断程序的结果
- 微信小程序的认识
- 黑马程序员——————关于默认构造函数的几个错误认识
- 黑马程序员-————学完String后的一点认识。
- 黑马程序员————IOS学习笔记 第9篇 block 、protocol的认识
- 黑马程序员——Mac OS X 的认识与总结
- 黑马程序员——OC的初步认识,类和对象
- 黑马程序员——OC的初步认识,类和对象
- http://ikrboy.iteye.com/blog/2007046
- C++内存管理
- iOS 第一天 推送遇到的一些零碎问题
- linux下python开发环境之一——安装python
- C#练习DataReader
- 黑马程序——Gridview的认识
- mybatis调用存储过程异常
- 三元组距离最小
- 贪心法之区间相关问题
- 数据结构 第二章 线性表 思维导图
- FOJ1682
- postgresql并发控制
- TDD培训回演:四则运算(总结)
- NSHTTPURLResponse中获取Status Code和Error Code 和 Header内容