日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android recyclerView/listview的点击变色、点击换背景颜色

發布時間:2023/12/15 Android 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android recyclerView/listview的点击变色、点击换背景颜色 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一言不合就上圖


點擊變色:
這里沒有用到什么高大上的技術點,只是靜下心好好想想“面向對象”,利用一點小邏輯。
我這里用的是recyclerView控件,在recyclerView的適配器里:

//先聲明一個int成員變量private int thisPosition;//再定義一個int類型的返回值方法public int getthisPosition() {return thisPosition;}//其次定義一個方法用來綁定當前參數值的方法//此方法是在調用此適配器的地方調用的,此適配器內不會被調用到public void setThisPosition(int thisPosition) {this.thisPosition = thisPosition;}//在recyclerView的onBindViewHolder重寫方法中判斷當前position是否是選中的position//如果是就設置背景,不是就設置另一種顏色的背景public void onBindViewHolder(RecyclerView.ViewHolder holder, final int position) {final RecViewHolderLeft recViewHolderLeft = (RecViewHolderLeft) holder;if (position == getthisPosition()) {recViewHolderLeft.titel.setBackgroundColor(Color.YELLOW);} else {recViewHolderLeft.titel.setBackgroundColor(Color.WHITE);}

緊接著是在activity或者fragment的點擊條目事件的地方進行調用適配器內的setThisPosition方法和點擊事件的position進行綁定

RecAdapterLeft recAdapterLeft = new RecAdapterLeft(getActivity(), leftBean);recViewL.setAdapter(recAdapterLeft);//recyclerView的點擊事件(點擊事件是recyclerView專屬的自定義回傳接口)//不是recyclerView的話點擊事件有所不同recAdapterLeft.setOnRecyclerViewItemClickListener(new RecAdapterLeft.OnItemClickListener() {@Overridepublic void onClick(int position) {//拿適配器調用適配器內部自定義好的setThisPosition方法(參數寫點擊事件的參數的position)recAdapterLeft.setThisPosition(position);//嫑忘記刷新適配器recAdapterLeft.notifyDataSetChanged();}});

ok大功告成

強調幾點:
1我的Android studio是2.3.3版本,SDK是-v7:26.+’

compile 'com.android.support:appcompat-v7:26.+'

?

?

?

轉自:http://blog.csdn.net/yueorange/article/details/79095537

總結

以上是生活随笔為你收集整理的Android recyclerView/listview的点击变色、点击换背景颜色的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。