首页 > 技术文章 > Android留言功能

znjy 2021-04-28 22:19 原文

留言功能主要代码:

 1 package com.example.secondhand;
 2 
 3 import android.content.Context;
 4 import android.view.LayoutInflater;
 5 import android.view.View;
 6 import android.view.ViewGroup;
 7 import android.widget.BaseAdapter;
 8 import android.widget.TextView;
 9 
10 import java.util.HashMap;
11 import java.util.LinkedList;
12 
13 /**
14 * 评论的适配器
15 * @author autumn_leaf
16 */
17 public class ReviewAdapter extends BaseAdapter {
18 
19 private Context context;
20 private LayoutInflater layoutInflater;
21 
22 private LinkedList<Review> reviews = new LinkedList<>();
23 HashMap<Integer,View> location = new HashMap<>();
24 
25 
26 public ReviewAdapter(Context context) {
27 this.context = context;
28 layoutInflater = LayoutInflater.from(context);
29 }
30 
31 public void setData(LinkedList<Review> reviews) {
32 this.reviews = reviews;
33 notifyDataSetChanged();
34 }
35 
36 @Override
37 public int getCount() {
38 return reviews.size();
39 }
40 
41 @Override
42 public Object getItem(int position) {
43 return reviews.get(position);
44 }
45 
46 @Override
47 public long getItemId(int position) {
48 return position;
49 }
50 
51 /**
52 * 获取视图
53 * @param position 位置
54 * @param convertView 当前的视图
55 * return convertView
56 */
57 @Override
58 public View getView(int position, View convertView, ViewGroup parent) {
59 ViewHolder holder = null;
60 if(location.get(position) == null) {
61 convertView = layoutInflater.inflate(R.layout.layout_commodity_review,null);
62 Review review = (Review) getItem(position);
63 holder = new ViewHolder(convertView,review);
64 location.put(position,convertView);
65 convertView.setTag(holder);
66 }else {
67 convertView = location.get(position);
68 holder = (ViewHolder) convertView.getTag();
69 }
70 return convertView;
71 }
72 
73 /**
74 * 静态ViewHolder类
75 */
76 static class ViewHolder {
77 
78 TextView tvStuId,tvTime,tvContent;
79 
80 public ViewHolder(View itemView, Review review) {
81 tvStuId = itemView.findViewById(R.id.tv_number);
82 tvTime = itemView.findViewById(R.id.tv_current_time);
83 tvContent = itemView.findViewById(R.id.tv_comment);
84 tvStuId.setText(review.get_id());
85 tvTime.setText(review.getSetCurrentTime());
86 tvContent.setText(review.getGoodsLiuyan());
87 }
88 }
89 }

 

推荐阅读