订单的适配器

本文详细探讨了在订单处理系统中如何利用适配器模式,将不同来源的订单数据统一转换为内部可处理的格式,实现系统的灵活性和扩展性。通过具体的代码示例,展示了适配器如何协调系统组件间的接口不匹配问题,确保系统能够顺畅地处理来自各种渠道的订单。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package com.bawei.yuezkao1.view.adapter;

import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;

import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;

import com.bawei.yuezkao1.R;
import com.bawei.yuezkao1.model.bean.HomeshopsBean;
import com.bumptech.glide.Glide;

import java.util.List;

import butterknife.BindView;
import butterknife.ButterKnife;
import io.realm.Realm;

/**
 * 项目名称:
 *
 * @Author 
 * 创建时间: 
 */
public class DD_Adapter extends RecyclerView.Adapter<DD_Adapter.ViewHolder> {

    private Context context;
    private List<HomeshopsBean> homeshopsBeans;//数据源集合
    private Realm realm;

    public DD_Adapter(Context context, List<HomeshopsBean> homeshopsBeans) {
        this.context = context;
        this.homeshopsBeans = homeshopsBeans;
        realm=Realm.getDefaultInstance();
    }

    @NonNull
    @Override
    public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
        View view = LayoutInflater.from(context).inflate(R.layout.dd_item, parent, false);
        return new ViewHolder(view);
    }

    @Override
    public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
        HomeshopsBean homeshopsBean = homeshopsBeans.get(position);
        //设置数据
        holder.username.setText(homeshopsBean.getUser().getUsername());
        holder.bookname.setText(homeshopsBean.getBookname());
        holder.appearance.setText(homeshopsBean.getAppearance());
        holder.location.setText(homeshopsBean.getLocation());
        holder.nowprice.setText("¥"+homeshopsBean.getNowprice());

        String[] images=homeshopsBean.getImages().split(",");
        Glide.with(context).load(images[0]).into(holder.bookImage);
        //删除订单
        holder.deleteOrder.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                realm.beginTransaction();
                //删除数据
                homeshopsBeans.remove(position);
                notifyDataSetChanged();
                Toast.makeText(context, "删除成功", Toast.LENGTH_SHORT).show();
                realm.commitTransaction();

            }
        });
    }

    @Override
    public int getItemCount() {
        return homeshopsBeans.size();
    }

    class ViewHolder extends RecyclerView.ViewHolder {
        @BindView(R.id.username)
        TextView username;
        @BindView(R.id.bookImage)
        ImageView bookImage;
        @BindView(R.id.bookname)
        TextView bookname;
        @BindView(R.id.appearance)
        TextView appearance;
        @BindView(R.id.location)
        TextView location;
        @BindView(R.id.nowprice)
        TextView nowprice;
        @BindView(R.id.deleteOrder)
        TextView deleteOrder;
        public ViewHolder(@NonNull View itemView) {
            super(itemView);
            ButterKnife.bind(this,itemView);
        }
    }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值