首页 > 编程学习 > ListView实验1之购物界面

ListView实验1之购物界面

发布时间:2022/1/17 12:51:39

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context=".MainActivity">

    <ListView
            android:id="@+id/mListView"
            android:layout_height="match_parent"
            android:layout_width="match_parent"
    />


</androidx.constraintlayout.widget.ConstraintLayout>

创建Product.java

在这里插入图片描述

package com.example.demo4;


import java.math.BigDecimal;

public class Product {
    private String bt;
    private String ms;
    private float dj;
    public String getBt() {
        return bt;
    }
    public void setBt(String bt) {
        this.bt = bt;
    }
    public String getMs() {
        return ms;
    }
    public void setMs(String ms) {
        this.ms = ms;
    }
    public float getDj() {
        return dj;
    }
    public void setDj(float dj) {
        this.dj = dj;
    }


}

创建liset_cell.xml文件

<?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:id="@+id/p_iv"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/pro"
    />
    <TextView
            android:id="@+id/bt"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toRightOf="@id/p_iv"
            android:layout_alignTop="@id/p_iv"
            android:textSize="25sp"
    />
    <TextView
            android:id="@+id/ms"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toRightOf="@id/p_iv"
            android:layout_below="@id/bt"

    />

    <TextView
            android:id="@+id/dj"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toRightOf="@id/p_iv"
            android:layout_below="@id/ms"
    />
    <Button
            android:id="@+id/gw"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="购物"
            android:layout_alignBottom="@id/dj"
            android:layout_toRightOf="@id/dj"


    />


</RelativeLayout>

编写MainActivity.java

package com.example.demo4;



import android.database.DataSetObserver;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
import android.widget.*;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;

import java.util.ArrayList;
import java.util.List;

public class MainActivity extends AppCompatActivity {
    private static final String TAG ="" ;
    private ListView mListView;
    private List<Product> list_views=new ArrayList<Product>();
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        initView();
        initData();
        MyBaseAdapter myBaseAdapter=new MyBaseAdapter();
        mListView.setAdapter(myBaseAdapter);

    }

    private void initData() {

        for(int i=0;i<200;i++){
            Product p=new Product();
            p.setBt("麻辣鸭脖_"+i);
            p.setDj(1.5f*i*3);
            p.setMs("麻辣鸭脖,精品鸭脖选择六和品牌的一级樱桃谷鸭,无淤血、无表皮破损,有我们的专业采购员精选为:重量40-50g,每千克为6根,长度为24cm每根,比普通鸭脖含肉量更多。");
            list_views.add(p);
        }
    }

    private void initView() {
        //找到ListView对象
        mListView=(ListView)findViewById(R.id.mListView);
        //
    }
    class MyBaseAdapter extends BaseAdapter {


        @Override
        public int getCount() {
            return list_views.size();
        }

        @Override
        public Object getItem(int position) {
            return list_views.get(position);
        }

        @Override
        public long getItemId(int position) {
            return 0;
        }

        @Override
        public boolean hasStableIds() {
            return false;
        }

        @Override
        public View getView(int position, View convertView, ViewGroup parent) {

            //将list_cell装换为View传给MainActivity
            View view=View.inflate(MainActivity.this,R.layout.list_cell,null);
            TextView bt_tv=(TextView)view.findViewById(R.id.bt);
            TextView ms_tv=(TextView)view.findViewById(R.id.ms);
            TextView dj_tv=(TextView)view.findViewById(R.id.dj);
            Product p=list_views.get(position);
            bt_tv.setText(p.getBt());
            ms_tv.setText(p.getMs());
            dj_tv.setText(p.getDj()+"");
            Button gw=(Button)findViewById(R.id.gw);
            return view;
        }

        @Override
        public int getItemViewType(int position) {
            return 0;
        }

        @Override
        public int getViewTypeCount() {
            return 1;
        }

        @Override
        public boolean isEmpty() {
            return false;
        }
    }
}

将图片放到该文件夹下

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
点击链接加入群聊【程序员技术交流群】:添加链接描述

Copyright © 2010-2022 ngui.cc 版权所有 |关于我们| 联系方式| 豫B2-20100000