package com.example.gsc.xinkongjian; import android.app.Activity; import android.os.Bundle; import android.support.v7.widget.GridLayoutManager; import android.support.v7.widget.RecyclerView; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ImageView; import android.widget.Toast; import com.squareup.picasso.Picasso; /** * Created by Administrator on 2016/7/25. */ public class TestActivity extends Activity { private RecyclerView rv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_test); rv = (RecyclerView) findViewById(R.id.rv); // rv.setLayoutParams(new StaggeredGridLayoutManager.LayoutParams(3, RecyclerView.HORIZONTAL)); //rv.setLayoutManager(new StaggeredGridLayoutManager(3,RecyclerView.HORIZONTAL)); // rv.setLayoutManager(new LinearLayoutManager(this)); rv.setLayoutManager(new GridLayoutManager(this, 2)); MyAdapter myadapter = new MyAdapter(); myadapter.setListeners(new MyRecycleItemListeners() { @Override public void onItemclilck(View v, int postation) { Toast.makeText(getApplication(), "你点击的是" + postation, 0).show(); } @Override public void onLongClick(View v, int postation) { Toast.makeText(getApplication(), "你长点击的是" + postation, 0).show(); } }); rv.setAdapter(myadapter); } class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder> { MyRecycleItemListeners listeners; public void setListeners(MyRecycleItemListeners listeners) { this.listeners = listeners; } @Override public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { // View v = View.inflate(parent.getContext(), R.layout.items_rv, null); View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.items_rv, parent, false); // ImageView imageView = (ImageView) v.findViewById(R.id.iv); ViewHolder vh = new ViewHolder(v); return vh; } @Override public void onBindViewHolder(final ViewHolder holder, final int position) { if (listeners != null) { holder.miv.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { listeners.onItemclilck(holder.miv, holder.getLayoutPosition()); } }); holder.miv.setOnLongClickListener(new View.OnLongClickListener() { @Override public boolean onLongClick(View v) { listeners.onLongClick(holder.miv, holder.getLayoutPosition()); return false; } }); } Picasso.with(TestActivity.this).load(MyConstacts.urls[position]).into(holder.miv); } @Override public int getItemCount() { return MyConstacts.urls.length; } public class ViewHolder extends RecyclerView.ViewHolder { public ImageView miv; public ViewHolder(View itemView) { super(itemView); miv = (ImageView) itemView.findViewById(R.id.iv); } } } }
新空间RecycleView复习
最新推荐文章于 2024-04-22 11:47:18 发布