美文网首页
An_接口回调Demo

An_接口回调Demo

作者: android_en | 来源:发表于2017-11-19 13:51 被阅读15次

接口回调通过在adapter里面来实现;
下面是recyclerview的简单adapter:

package com.example.zhoukao_zidingyiyuan_moredownload.adapter;

import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;

import com.example.zhoukao_zidingyiyuan_moredownload.R;
import com.example.zhoukao_zidingyiyuan_moredownload.bean.Bean;
import com.facebook.drawee.backends.pipeline.Fresco;
import com.facebook.drawee.interfaces.DraweeController;
import com.facebook.drawee.view.SimpleDraweeView;

import java.util.List;

/**
 * 作者:author
 * 时间 :2017/11/18:10:32
 * 说明:
 */

public class RvAdapter extends RecyclerView.Adapter<RvAdapter.MyViewHolder> implements View.OnClickListener {
    Context context;
    List<Bean.DataBean> list;
    private OnItemClickListener mOnItemClickListener=null;
    public static interface OnItemClickListener{
        void onItemClick(View view,int positon);
    }
    public RvAdapter(Context context, List<Bean.DataBean> list) {
        this.context = context;
        this.list = list;
    }

    @Override
    public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        View view=LayoutInflater.from(parent.getContext()).inflate(R.layout.items,parent,false);
        MyViewHolder myViewHolder = new MyViewHolder(view);
        view.setOnClickListener(this);
        return myViewHolder;

    }

    @Override
    public void onBindViewHolder(MyViewHolder holder, int position) {
        DraweeController controller= Fresco.newDraweeControllerBuilder()
                .setUri(list.get(position).getImage_url())
                .setAutoPlayAnimations(true)
                .build();
        holder.sdv.setController(controller);
        holder.tv.setText(list.get(position).getTitle());
        holder.itemView.setTag(position);
    }
    public void onClick(View v){
        if(mOnItemClickListener!=null){
            mOnItemClickListener.onItemClick(v,(int)v.getTag());
        }
    }
    public void  setOnItemClickListener (OnItemClickListener listener)  {
        this.mOnItemClickListener=listener;
    }
    @Override
    public int getItemCount() {
        return list==null?0:list.size();
    }

    class MyViewHolder extends RecyclerView.ViewHolder{
        SimpleDraweeView sdv;
        TextView tv;
        public MyViewHolder(View itemView) {
            super(itemView);
            sdv=itemView.findViewById(R.id.sdv);
            tv=itemView.findViewById(R.id.tv);
        }
    }
}

在activity里面可以实现点击条目的接口回调

rvAdapter.setOnItemClickListener(new RvAdapter.OnItemClickListener() {
            @Override
            public void onItemClick(View view, int positon) {
                String urlmovie = list.get(positon).getVedio_url();
                Toast.makeText(MoreActivity.this,urlmovie,Toast.LENGTH_SHORT).show();
                Intent intent = new Intent(MoreActivity.this,DownloadActivity.class);
                intent.putExtra("urlmovie",urlmovie);
                startActivity(intent);

            }
        });

相关文章

  • An_接口回调Demo

    接口回调通过在adapter里面来实现;下面是recyclerview的简单adapter: 在activity里...

  • Android上拉加载更多

    Android上拉加载更多# 本次demo的核心是ListView+OnScrollListener+接口回调 首...

  • Kotlin使用接口回调

    1.Java中的接口回调实现(支持多方法回调) 声明回调接口,初始化接口 使用接口回调(无参数) 使用接口回调(带...

  • An_路由Demo

    Demo2

  • Java回调深入理解

    1 接口回调 1.1 接口回调概念 什么是接口回调接口回调是指:可以把使用某一接口的类创建的对象的引用赋给该接口声...

  • iOS支付宝SDK回调那坑

    支付宝钱包支付接口开发包2.0标准版(iOS 2.2.1) ,回调不出来,demo给出的方法是: 而事实上的回调是...

  • 在监听事件回调中写Toast,显示失败

    写打印demo过程中,在一个回调里直接写了Toast 直接这样写,运行程序,接口回调后并没有显示Toast,也没有...

  • 回调demo***

    1.基本函数调用思想 2.回调函数 3.实例

  • Android Module之间数据传递

    方法一:使用接口回调 (1)在子module创建回调接口(参数可变) (2)在子module 实现类设置接口回调 ...

  • Android接口回调

    之前对接口回调一直有点模糊,会写但是理解的不透彻,今天记录一下自己理解的回调是什么。 接口回调是什么? 接口回调是...

网友评论

      本文标题:An_接口回调Demo

      本文链接:https://www.haomeiwen.com/subject/sunuvxtx.html