recyclerview解析路径json的点击事件
来源:互联网 发布:单片机智能反编译器 编辑:程序博客网 时间:2024/06/05 03:11
//activity实现接口
public interface MyItemClickListener { public void onItemClick(View view, int postion);}
//activity
public class MainActivity extends AppCompatActivity implements Main,MyItemClickListener{ private RecyclerView recycler_view; private MyAdapter adapter; private List<MyDataBean.TuijianEntity.ListEntity> list; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); recycler_view = (RecyclerView) findViewById(R.id.recycler_view); String url="https://www.zhaoapi.cn/ad/getAd"; Presenter p = new Presenter(this); p.getUrl(url); } @Override public void getStringJson(final String json) { runOnUiThread(new Runnable() { @Override public void run() { MyDataBean myDataBean = new Gson().fromJson(json, MyDataBean.class); list = myDataBean.getTuijian().getList(); recycler_view.setLayoutManager(new LinearLayoutManager(MainActivity.this)); adapter = new MyAdapter(MainActivity.this, list); recycler_view.setAdapter(adapter); MyItemClickListener listener = new MyItemClickListener() { @Override public void onItemClick(View view, int postion) { int pid = list.get(postion).getPid(); Intent intent = new Intent(MainActivity.this, Main2Activity.class); intent.putExtra("pid",pid+""); startActivity(intent); } }; adapter.setOnItemClickListener(this,listener); } }); }}
//MyAdapter适配器
package com.bwie.mydijishijian.adapter;import android.content.Context;import android.support.v7.widget.RecyclerView;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import com.bwie.mydijishijian.R;import com.bwie.mydijishijian.bean.MyDataBean;import com.bwie.mydijishijian.holder.MyViewHolder;import java.util.List;public class MyAdapter extends RecyclerView.Adapter<MyViewHolder>{ private final Context context; private final List<MyDataBean.TuijianEntity.ListEntity> list; private MyItemClickListener listener; private Runnable runnable; public MyAdapter(Context context, List<MyDataBean.TuijianEntity.ListEntity> list) { this.context = context; this.list = list; } @Override public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View view = LayoutInflater.from(context).inflate(R.layout.item_linear, parent, false); MyViewHolder holder = new MyViewHolder(view,runnable,listener); return holder; } /*public void setOnItemClickListener(MyItemClickListener listener){ this.listener = listener; }*/ public void setOnItemClickListener(Runnable runnable,MyItemClickListener listener) { this.runnable = runnable; this.listener = listener; } @Override public void onBindViewHolder(MyViewHolder holder, int position) { holder.text_view.setText(list.get(position).getTitle()); } @Override public int getItemCount() { return list.size(); }}//MyViewHolder实现OnClickListener
public interface OnClickListener { public void onClick(View v);}//MyViewHolder获取控件
package com.bwie.mydijishijian.holder;import android.support.v7.widget.RecyclerView;import android.util.Log;import android.view.View;import android.widget.ImageView;import android.widget.TextView;import com.bwie.mydijishijian.R;import com.bwie.mydijishijian.adapter.MyItemClickListener;public class MyViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener{ public ImageView image_view; public TextView text_view; public Runnable listener; public MyItemClickListener mylistener; public MyViewHolder(View itemView, Runnable listener, MyItemClickListener mylistener) { super(itemView); image_view = itemView.findViewById(R.id.image_view); text_view = itemView.findViewById(R.id.text_view); this.listener = listener; this.mylistener = mylistener; itemView.setOnClickListener(this); } @Override public void onClick(View view) { if(mylistener != null){ mylistener.onItemClick(view,getPosition()); Log.d("++++","dfg"); } }}//activityandroid:orientation="vertical"<RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:textSize="25sp" android:text="商品"/> <ImageView android:id="@+id/image_btn" android:layout_margin="10dp" android:clickable="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:src="@drawable/lv_icon"/></RelativeLayout><android.support.v4.widget.SwipeRefreshLayout android:id="@+id/swipe_refresh" android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.v7.widget.RecyclerView android:id="@+id/recycler_view" android:layout_width="match_parent" android:layout_height="match_parent"></android.support.v7.widget.RecyclerView></android.support.v4.widget.SwipeRefreshLayout>
阅读全文
0 0
- recyclerview解析路径json的点击事件
- RecyclerView的点击事件
- RecyclerView的点击事件
- RecyclerView的点击事件
- RecyclerView的点击事件
- RecyclerView的点击事件
- RecyclerView 的点击事件!
- RecyclerView的点击事件
- RecyclerView 的点击事件
- RecyclerView的点击事件
- RecyclerView的点击事件
- RecyclerView的点击事件
- RecyclerView的点击事件
- RecyclerView的点击事件
- RecyclerView的点击事件
- RecyclerView的点击事件
- RecyclerView的点击事件
- RecyclerView的点击事件
- VO、PO、DTO、BO的概念
- AVPicture中data与linesize关系
- Glide的基本使用
- CSS3D之 perspective、perspective-origin属性
- 详解
- recyclerview解析路径json的点击事件
- zentao
- 懒人得多动脑 HNUST 1884
- HDOJ 2011 多项式求和
- C++,OpenCV 中template(模板)的简单理解
- HDU2700-Parity
- 数据结构——二叉树的递归与非递归遍历(先序,中序,后序)
- JavaScript异步之Promise
- 从作用机制和性质上看待methods,watch和computed的关系