国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

RecyclerView實現水波紋點擊效果

2019-10-21 21:26:01
字體:
來源:轉載
供稿:網友

本文實例為大家分享了RecyclerView實現水波紋點擊效果的具體代碼,供大家參考,具體內容如下

效果圖

RecyclerView,水波紋,點擊

item.xml

這里就是主要設置background為我們后面寫的一個selector

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:orientation="vertical"    android:background="@drawable/recycler_item_selector"    android:layout_width="match_parent"    android:layout_height="wrap_content"> <TextView  android:id="@+id/textView"  android:layout_width="match_parent"  android:layout_height="wrap_content"  android:gravity="center"  android:textSize="40sp"  android:text="aaaa"/></LinearLayout>

drawable-v21/recycler_item_selector.xml (v21版本以上)

<?xml version="1.0" encoding="utf-8"?><ripple xmlns:android="http://schemas.android.com/apk/res/android"  android:color="@color/colorPrimary"> <item android:drawable="@color/write"/></ripple>

drawable/recycler_item_selector.xml (v21版本以下的沒有水波紋效果)

<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@color/colorPrimary" android:state_pressed="true"/> <item android:drawable="@color/colorPrimary" android:state_focused="true"/> <item android:drawable="@color/write"/></selector>

接下來是MyAdapter

public class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder> { private OnRvItemClick mOnRvItemClick; private Context mContext; String[] strings; public MyAdapter(Context ctx, String[] strings, OnRvItemClick onRvItemClick) {  mContext = ctx;  this.mOnRvItemClick = onRvItemClick;  this.strings = strings; } @Override public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {  View view = LayoutInflater.from(mContext).inflate(R.layout.item, parent, false);  return new ViewHolder(view); } @Override public void onBindViewHolder(ViewHolder holder, int position) {  holder.setData(position); } @Override public int getItemCount() {  return 20; } public class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {  @BindView(R.id.textView)  TextView textView;  public ViewHolder(View itemView) {   super(itemView);   ButterKnife.bind(this,itemView);   itemView.setOnClickListener(this);  }  public void setData(int position) {   textView.setText("position" + position);  }  @Override  public void onClick(View view) {   if (mOnRvItemClick != null)    mOnRvItemClick.onItemClick(view, getAdapterPosition());  } } /**  * item點擊接口  */ public interface OnRvItemClick {  void onItemClick(View v, int position); }}

MainActivity

public class MainActivity extends AppCompatActivity { @BindView(R.id.RecyclerView) RecyclerView mRecyclerView; @Override protected void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  setContentView(R.layout.activity_main);  ButterKnife.bind(this);  MyAdapter myAdapter = new MyAdapter(this, null, new MyAdapter.OnRvItemClick() {   @Override   public void onItemClick(View v, int position) {    Toast.makeText(getApplicationContext(), "click" + position, Toast.LENGTH_SHORT)      .show();   }  });  mRecyclerView.setLayoutManager(new LinearLayoutManager(this,LinearLayoutManager.VERTICAL,false));  mRecyclerView.setAdapter(myAdapter); }}

github :RecyclerView水波紋效果

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 乌兰县| 金堂县| 抚宁县| 阳朔县| 阳新县| 安乡县| 汝南县| 巴东县| 上高县| 河北区| 东阳市| 那曲县| 尼勒克县| 南汇区| 安阳县| 德江县| 两当县| 迁西县| 油尖旺区| 沾化县| 大关县| 三台县| 抚宁县| 景德镇市| 资兴市| 营口市| 阆中市| 西丰县| 县级市| 龙泉市| 修文县| 屏边| 清水河县| 峡江县| 昌江| 仁布县| 雅江县| 金寨县| 东光县| 全州县| 水富县|