【Android-设计模式】适配器模式

【适配器模式的定义】:

适配器模式把一个类的接口变换成客户民期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。

【实力类比】:

很多东西狗不吃但人吃,人吃后拉屎给狗吃屎——这个例子中的人就一个适配器!

【实战】


public class GoodsAdapter extends BaseAdapter {

    private LayoutInflater inflater;
    private List<Goods> goods;

    public GoodsAdapter(Context context, List<Goods> girs) {
        inflater = LayoutInflater.from(context);
        this.goods = girs;
    }

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

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

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

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        View view = inflater.inflate(R.layout.item, null);
        Goods g = goods.get(position);
        ImageView iv_icon = (ImageView)view.findViewById(R.id.iv_icon);
        iv_icon.setImageResource(g.icon);

        TextView tv_lik = (TextView)view.findViewById(R.id.tv_like);
        tv_lik.setText("喜欢程度:" + g.like);

        TextView tv_style = (TextView)view.findViewById(R.id.tv_style);
        tv_style.setText(g.style);

        return view;
    }

}
  • GoodsAdapter是一个适配器
  • 构造函数是输入,其它函数是输出
  • 输入的数据类型可以根据业务来设计
  • 输出的数据类型是固定的:也就是View
  • 其中getView是核心函数,负责如何把输入数据转成输出

你可能感兴趣的:(Android)