ListView与自定义适配器(显示java端的数据)

本文介绍如何在Android中使用自定义适配器显示Java端数据,重点讲解BaseAdapter及其子类的使用,结合LayoutInflater解析布局,并通过一个案例详细阐述数据展示的全过程,包括实体类、DAO方法、布局设计和MainActivity的实现。
摘要由CSDN通过智能技术生成

一、自定义适配器
1、BaseAdapter:是所有适配器类的父类,可以对列表项进行最大限度的定制
2、自定义适配器中的方法

@Override
public int getCount() {
  //从java端获取到多少条数据
    return data.size();
}
@Override
public Object getItem(int i) {
  //获取到具体的数据
    return data.get(i);
}
@Override
public long getItemId(int i) {
  //获取到第几条数据
     return i;
}
@Override
public View getView(int i, View view, ViewGroup viewGroup) {
    return null;
}

2、LayoutInflater(布局解析器)
LayoutInflater有三种获得方式,资料中有详细介绍
用来把layout布局文件解析成一个View对象,不可以new,需要使用系统服务获得

inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);

3、案例:展示数据(书本打比方)
①、book.java(实体类)

package com.example.t212_09;

public class Book {
   
    private Integer id;
    private String title;
    private String author;

    private Float price;
    private String publish;
    private String remark;

    private int image;

    public Book() {
        super();
    }

    public int getImage() {
        return image;
    }

    public void setImage(int image) {
        this.image = image;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getAuthor() {
        return author;
    }

    public void setAuthor(String author) {
        this.author = author;
    }

    public Float getPrice() {
        return price;
    }

    public void setPrice(Float price) {
        this.price = price;
    }

    public String getPublish() {
        return publish;
    }

    public void setPublish(String publish) {
        this.publish = publish;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }
}
//数据库中也需要这几个列

②、展示所有的dao方法

package com.example.t212_09;

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

public class BookDao {
    private int[] bookImages = new int[] { R.drawable.book1, R.drawable.book2,
            R.drawable.book3, R.drawable.book4, R.drawable.book5,
            R.drawable
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值