安卓作业(购物商城)

package com.example.listview;


import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;



    public class MainActivity extends Activity {
        private ListView mListView;
        //需要适配的数据
        private String[] titles = { "蓝莓", "柠檬", "橙子", "水果篮", "香蕉",
                "草莓"};
        private String[] prices = { "10元/盒", "2元/个", "10元/kg", "50元/篮", "12元/kg",
                "46元/kg"};
        private String[] quality = { "30盒", "20个", "30kg", "10篮", "25kg",
        "15kg"};
        //图片集合
        private int[] icons = {R.drawable.table,R.drawable.apple,R.drawable.cake,
                R.drawable.wireclothes,R.drawable.kiwifruit,R.drawable.scarf};
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            //初始化ListView控件
            mListView = (ListView) findViewById(R.id.lv);
            //创建一个Adapter的实例
            MyBaseAdapter mAdapter = new MyBaseAdapter();
            //设置Adapter
            mListView.setAdapter(mAdapter);
        }
        //创建一个类继承BaseAdapter
        class MyBaseAdapter extends BaseAdapter {
            //得到item的总数
            @Override
            public int getCount() {
                //返回ListView Item条目的总数
                return titles.length;
            }
            //得到Item代表的对象
            @Override
            public Object getItem(int position) {
                //返回ListView Item条目代表的对象
                return titles[position];
            }
            //得到Item的id
            @Override
            public long getItemId(int position) {
                //返回ListView Item的id
                return position;
            }
            //得到Item的View视图
            @Override
            public View getView(int position, View convertView, ViewGroup parent) {
             /*   //将list_item.xml文件找出来并转换成View对象
                View view  = View.inflate(MainActivity.this,
                        R.layout.list_item, null);
                //找到list_item.xml中创建的TextView
                TextView title = (TextView) view.findViewById(R.id.title);
                TextView price = (TextView) view.findViewById(R.id.price);
                TextView quality = (TextView) view.findViewById(R.id.quality);
                ImageView iv = (ImageView) view.findViewById(R.id.iv);
                title.setText(titles[position]);
                price.setText(prices[position]);
                quality.setText(quality[position]);
                iv.setBackgroundResource(icons[position]);
                return view;*/
                ViewHolder holder = null;
                if(convertView == null){
                    //将list_item.xml文件找出来并转换成View对象
                    convertView  = View.inflate(MainActivity.this, R.layout.list_item, null);
                    //找到list_item.xml中创建的TextView
                    holder = new ViewHolder();
                    holder.title = (TextView) convertView.findViewById(R.id.title);
                    holder.price = (TextView) convertView.findViewById(R.id.price);
                    holder.quality = (TextView) convertView.findViewById(R.id.quality);
                    holder.iv = (ImageView) convertView.findViewById(R.id.iv);
                    convertView.setTag(holder);
                }else{
                    holder = (ViewHolder) convertView.getTag();
                }
                holder.title.setText(titles[position]);
                holder.price.setText(prices[position]);
                holder.quality.setText(quality[position]);
                holder.iv.setBackgroundResource(icons[position]);
                return convertView;



            }

        }
        static class ViewHolder{
            public TextView quality;
            TextView title;
            TextView price;
            ImageView iv;
        }
        
    }



<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <ListView
        android:id="@+id/lv"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignLeft="@+id/textView1"
        android:layout_alignParentTop="true" />
  

    <TextView
        android:id="@+id/textView1"
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:background="#FF8F03"
        android:gravity="center"
        android:text="购物商城"
        android:textColor="#FFFFFF"
        android:textSize="18sp" />

</RelativeLayout>

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="10dp">

    <ImageView
        android:id="@+id/iv"
        android:layout_width="120dp"
        android:layout_height="90dp"
        android:layout_marginTop="70dp"
        android:layout_centerVertical="true"
        />

    <RelativeLayout 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="10dp"
        android:layout_toRightOf="@+id/iv"
         android:layout_centerVertical="true"
        >
    <TextView
        android:id="@+id/title"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="70dp"
        android:text="桌子"
        android:textColor="#000000"
        android:textSize="20sp" />

    <TextView
        android:id="@+id/tv_price"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/title"
        android:text="价格:"
        android:textColor="#FF8F03"
        android:textSize="20sp" />

    <TextView
        android:id="@+id/price"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="1000"
        android:textColor="#FF8F03"
        android:textSize="20sp" 
        android:layout_below="@+id/title"
        android:layout_toRightOf="@+id/tv_price"
        />
    <TextView
        android:id="@+id/title1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
       android:layout_below="@+id/tv_price"
        android:text="数量:"
        android:textColor="#FF8F03"
        android:textSize="20sp" />
    
    <TextView
        android:id="@+id/quality"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/price"
        android:layout_toRightOf="@+id/title1"
        android:text="10"
        android:textColor="#FF8F03"
        android:textSize="20sp" />

</RelativeLayout>
        

</LinearLayout>

原文地址:https://www.cnblogs.com/gwz-1314/p/14007916.html