Android ListView

 

//主页面布局 activity_main.xml

<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"
    tools:context=".MainActivity" >

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="@@商城"
        android:textSize="48px"
        android:textColor="#f00"
        android:gravity="center"
        android:background="#A9A9A9"
        android:id="@+id/tv1"
        />
        <TextView
            android:id="@+id/tv2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="您当前选择的商品是:"
        android:textSize="30px"
        android:layout_below="@+id/tv1"
        android:layout_marginTop="200px"
        android:layout_marginLeft="70px"
        />
       
        <TextView
            android:id="@+id/proName"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="无"
        android:textSize="30px"
        android:textColor="#f00"
        android:layout_below="@+id/tv2"
        android:layout_marginTop="75px"
        android:layout_marginLeft="130px"
        />
      <TextView
            android:id="@+id/tv3"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="价格是:"
        android:textSize="30px"
        android:layout_below="@+id/proName"
        android:layout_marginTop="130px"
        android:layout_marginLeft="70px"
        />
      <TextView
            android:id="@+id/proPrice"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="0元"
        android:textSize="30px"
        android:textColor="#f00"
        android:layout_below="@+id/proName"
        android:layout_marginTop="250px"
        android:layout_marginLeft="130px"
        />
       
      <Button
         
          android:layout_marginTop="100px"
          android:layout_marginLeft="250px"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:text="打开商品列表"
          android:id="@+id/show"
         
          ></Button>
</RelativeLayout>

//ListView 布局

<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"
    tools:context=".ShowActivity" >

    <ListView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/lv"
        android:divider="#f00"
        android:dividerHeight="1px"
        ></ListView>

</RelativeLayout>

//ListView 子布局

 

 

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    >
    <ImageView
        android:layout_width="100px"
        android:layout_height="100px"
        android:id="@+id/img"
        />
    <TextView
        android:layout_width="100px"
        android:layout_height="100px"
        android:layout_toRightOf="@+id/img"
        android:layout_margin="10px"
        android:id="@+id/name"
        />
    <TextView
        android:layout_width="100px"
        android:layout_height="100px"
        android:layout_below="@+id/name"
        android:layout_margin="10px"
        android:id="@+id/price"
        />
</RelativeLayout>

//主页面后台

 

package com.example.lx00322;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;

 

public class MainActivity extends Activity {
 
 private Button show; //找到id为show的按钮组件
 private TextView proName,proPrice;
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
  //得到id为show的组件
  show = (Button) findViewById(R.id.show);
  proName = (TextView) findViewById(R.id.proName);
  proPrice = (TextView) findViewById(R.id.proPrice);
  //给show添加一个单击事件
  show.setOnClickListener(new OnClickListener() {
   @Override
   public void onClick(View v) {
    // TODO Auto-generated method stub
    //创建一个意图
    Intent intent = new Intent(MainActivity.this,ShowActivity.class);
    startActivityForResult(intent, 1);
   }
  });
 }
 @Override
 protected void onActivityResult(int requestCode, int resultCode, Intent data) {
  // TODO Auto-generated method stub
  super.onActivityResult(requestCode, resultCode, data);
  if(requestCode == 1 && resultCode == 1){
   String name = data.getStringExtra("name");
   String price= data.getStringExtra("price");
   proName.setText(name);
   proPrice.setText(price);
  }
 }
 @Override
 public boolean onCreateOptionsMenu(Menu menu) {
  // Inflate the menu; this adds items to the action bar if it is present.
  getMenuInflater().inflate(R.menu.activity_main, menu);
  return true;
 }
}

//ListView 后台

 

package com.example.lx00322;

import java.util.ArrayList;

import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;

import com.bwie.beans.Pro;

public class ShowActivity extends Activity {
 //定义一个ListView组件
 private ListView lv;
 //定义数据源
 private int[] imgs = {R.drawable.tu1,R.drawable.tu2,R.drawable.tu3,R.drawable.tu4,R.drawable.tu5,R.drawable.tu6};
 private String[] names = {"手机","手表","电视机","电脑","椅子","滕子"};
 private int[] prices = {4999,500,3999,8522,66,70};
 private ArrayList<Pro> Prolist;
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_show);
  //找到id为lv的组件
  lv = (ListView) findViewById(R.id.lv);
  Prolist = new ArrayList<Pro>();  //创建一个集合的实例
  for(int i = 0;i<imgs.length;i++){  //循环这放入集合中
   Pro pro = new Pro(imgs[i], names[i], prices[i]);
   //把对象放入集合中
   Prolist.add(pro);
  }
  lv.setAdapter(new BaseAdapter() {
   ViewHolder viewHolder = null;
   @Override
   public View getView(int position, View conTextView, ViewGroup arg2) {
    // TODO Auto-generated method stub
    if(conTextView == null){
     viewHolder = new ViewHolder();
     conTextView = View.inflate(ShowActivity.this, R.layout.listitem_layout, null);
     viewHolder.img = (ImageView) conTextView.findViewById(R.id.img);
     viewHolder.name = (TextView) conTextView.findViewById(R.id.name);
     viewHolder.price = (TextView) conTextView.findViewById(R.id.price);
     conTextView.setTag(viewHolder);
    }else{                                         
     viewHolder = (ViewHolder) conTextView.getTag();
    }
    Pro pro1 = Prolist.get(position);
    viewHolder.img.setImageResource(pro1.getImg());
    viewHolder.name.setText(pro1.getName());
    viewHolder.price.setText(pro1.getPrice()+"");
    
    return conTextView;
   }
   @Override
   public long getItemId(int arg0) {
    // TODO Auto-generated method stub
    return 0;
   }
   @Override
   public Object getItem(int arg0) {
    // TODO Auto-generated method stub
    return null;
   }
   @Override
   public int getCount() {
    // TODO Auto-generated method stub
    return Prolist.size();
   }
   class ViewHolder{
    ImageView img;
    TextView name,price;
   }
  });
 lv.setOnItemClickListener(new OnItemClickListener(){
  @Override
  public void onItemClick(AdapterView<?> arg0, View arg1,
    int arg2, long arg3) {
   // TODO Auto-generated method stub
   final Pro pro = Prolist.get(arg2);
   AlertDialog alert = new AlertDialog.Builder(ShowActivity.this) //创建一个AlertDialog 对话框
   .setTitle("购买商品")  //对话框的标题
   .setMessage("是否确定购买"+pro.getName()+"价格"+pro.getPrice()+"元")  //对话框的内容
   .setPositiveButton("确定", new DialogInterface.OnClickListener() {  //当我点击确定以后要干什么事情
    @Override
    public void onClick(DialogInterface dialog, int which) {
     // TODO Auto-generated method stub
     Intent it = getIntent(); //创建一个意图
     it.putExtra("name", pro.getName());  //把要放如的数据 放入意图中
     it.putExtra("price",pro.getPrice()+"元");
     setResult(1,it); //返回到请求的页面
     finish(); //关闭(杀死)当前页面
    }
   })
   .setNegativeButton("取消", null)
   .create(); //启动AlertDialog 对话框
   alert.show(); //让对话框显示
  }
 });
 }
 @Override
 public boolean onCreateOptionsMenu(Menu menu) {
  // Inflate the menu; this adds items to the action bar if it is present.
  getMenuInflater().inflate(R.menu.activity_show, menu);
  return true;
 }
}

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值