Files
android-learn-app/app/src/main/java/top/iletter/lvnote/BookAdapter.java
DelLevin-Home 41ea86db01 222
2026-02-10 23:17:45 +08:00

57 lines
1.9 KiB
Java

package top.iletter.lvnote;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import java.util.List;
public class BookAdapter extends RecyclerView.Adapter<BookAdapter.ViewHolder> {
private final List<BookStatusFragment.BookItem> books;
public BookAdapter(List<BookStatusFragment.BookItem> books) {
this.books = books;
}
@NonNull
@Override
public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view = LayoutInflater.from(parent.getContext())
.inflate(R.layout.item_book, parent, false);
return new ViewHolder(view);
}
@Override
public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
BookStatusFragment.BookItem book = books.get(position);
holder.title.setText(book.title);
holder.authors.setText(book.authors);
holder.publisher.setText(book.publisher);
holder.pages.setText(book.pages);
holder.isbn.setText(book.isbn);
holder.rating.setText(book.rating > 0 ? String.valueOf(book.rating) : "--");
}
@Override
public int getItemCount() {
return books.size();
}
static class ViewHolder extends RecyclerView.ViewHolder {
TextView title, authors, publisher, pages, isbn, rating;
ViewHolder(View itemView) {
super(itemView);
title = itemView.findViewById(R.id.tv_title);
authors = itemView.findViewById(R.id.tv_authors);
publisher = itemView.findViewById(R.id.tv_publisher);
pages = itemView.findViewById(R.id.tv_pages);
isbn = itemView.findViewById(R.id.tv_isbn);
rating = itemView.findViewById(R.id.tv_rating);
}
}
}