1. 程式人生 > >實現RecyclerView的item點選事件的內部監聽器

實現RecyclerView的item點選事件的內部監聽器

程式碼如下:

public class myViewholder extends RecyclerView.ViewHolder implements View.OnClickListener{
    private TextView tv_bookname;
    private TextView tv_bookauthor;
    private TextView tv_bookintroduce;
    private ImageView img_book;
    public myViewholder(View itemView) {
        super(itemView)
; tv_bookname= (TextView) itemView.findViewById(R.id.item_bookname); tv_bookauthor= (TextView) itemView.findViewById(R.id.item_bookauthor); tv_bookintroduce= (TextView) itemView.findViewById(R.id.item_bookintroduce); img_book= (ImageView) itemView.findViewById(R.id.item_bookimage); itemView.setOnClickListener(this);
} @Override public void onClick(View v) { Log.d(TAG,"onClick--position:"+getAdapterPosition()); //得到索書號 //跳轉窗體,攜帶索書號 Intent intent=new Intent(context,DetailsActivity.class); intent.putExtra("book_callnum",(String)list.get(getAdapterPosition()).get("book_callnumber")); context.startActivity(intent)
; } }
首先myViewholder實現了View的點選事件的介面,然後又有設定了監聽器(黃色高亮程式碼行),之後關鍵的地方就是確定點選的是哪一項,很巧在ViewHolder這個類中有getAdapterPosition()這個方法,所以對於確定是哪一項被點選了起到關鍵性的作用,根據點選不同項做不同的事情,就是這麼簡單。

相關推薦

Android studio程式碼實現打電話+事件四種方式

?Android系統架構(重點) 第一層:應用層Application 第二層:應用框架層Application Framework 第三層:Android底層類庫層 Libraries、Dalvik虛擬機器 第四層:linux核心層 linux kernel Android是執行在

讓RelativeLayout,LinearLayout整個佈局實現響應事件

以RelativeLayout為例 <方法一> 1,在程式碼中加入如下紅色程式碼,不然會被包含在其中的控制元件把焦點搶佔,此時子控制元件無需設定clickable和focuseable <RelativeLayout             android

RecyclerView實現Item事件方法三/四

此係列文章隔上次釋出有一段時間,原因就是懶(其實是比較忙),今天來說下剩下的兩種方法,如何優雅的實現 對於方法三我這裡就不說了,因為有很多文章都有說明,那就是基於RecyclerView.On

RecyclerView實現Item事件方法二

《RecyclerView實現Item點選事件方法一》上篇文章中我們通過一種方式實現了條目的點選事件,今天我們用另外一種方式來實現RecyclerView的條目點選事件來彌補方法一中所提到的缺陷 利用Adapter來實現 adapter code

使用UITextView實現文字事件

原理: 採用的是UITextView的URL連結,設定UITextView.attributedText並設定代理delegate,響應的回撥函式shouldInteractWithURL。

實現RecyclerView事件的探索-----微風android新手-------

RecyclerView是一個官方介紹RecyclerView為在有限的視窗展現大量資料的控制元件。擁有類似功能的控制元件有ListView、GridView的控制元件,是support:recyclerview-v7中提供的控制元件。 RecyclerView的使用就不說了,說說Recycle

Android三種方法實現按鈕事件

0.我們都知道Java在開發介面的時候,需要使用監聽事件,只有在寫過監聽事件之後才能夠完整的使用軟體,比如說,我們在寫了一個button之後,想點選button,然後在文字標籤中變換字型該怎麼做呢?那麼我們就需要對button這個view進行新增監聽事件,新增完監聽事件之後,

百度地圖根據座標自定義覆蓋物,並實現事件

在很多APP中都會用到百度地圖,以實現各種功能,本片文章介紹在百度地圖中新增自定義覆蓋物並新增其點選事件 public class NearByFragment extends Fragment { private MapView mapView;

用Kotlin實現Android事件

近期,Google宣佈Kotlin成為了Android一級開發語言。於是就剛剛簡單的研究了一下,查資料的時候發現現成的資料還是很少的,於是決定自己記錄一下,方便以後檢視,也供其他人一個參考。 在android中,點選事件大致分為三種寫法: 1. 匿名內部類。 2. Acti

為Button事件註冊監聽器的兩種方法

Button是Android程式中最常用到的控制元件之一,主要用來與程式和使用者的互動。可配置的屬性這裡不展開敘述,這裡簡單的在activity_main.xml中加入一個Button: <Bu

實現RecyclerView的item事件內部監聽器

程式碼如下: public class myViewholder extends RecyclerView.ViewHolder implements View.OnClickListener{ private TextView tv_bookname;

android RecyclerView介面卡實現item+item內部控制元件事件

@先看看效果是不是自己想要的吧@Adapter:自定義一個繼承RecyclerView.Adapter的介面卡,作用:將資料與每一個item繫結LayoutManager:佈局管理器,確定每一個item的擺放形式,展示和隱藏        a: LinearLayoutMan

android RecyclerView介面卡實現多佈局item+item內部控制元件事件

@先看看效果是不是自己想要的吧@使用步驟:第一步:新增RecyclerView介面卡依賴 compile 'com.android.support:recyclerview-v7:27.1.1'第二步:佈局檔案裡使用RecyclerView第三步:建立兩個item子佈局

Android開發20——單個監聽器監聽多個按鈕事件

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

Android RecyclerView事件實現的兩種方式

因為經常會用到RecyclerView,今天在這裡總結一下實現RecyclerView點選事件的實現方法 一、通過介面回撥的方式實現     1. 首先定義一個點選的介面(Recyclerview自身不帶有點選事件的回撥) public interface OnRec

Android RecyclerView事件實現的幾種方式

因為經常會用到RecyclerView,今天在這裡總結一下實現RecyclerView點選事件的實現方法 一、通過介面回撥的方式實現     1. 首先定義一個點選的介面(Recyclerview自身不帶有點選事件的回撥) public interface OnRec

Activity中響應ListView內部按鈕的事件

最近交流群裡面有人問到一個問題:如何在Activity中響應ListView內部按鈕的點選事件,不要在Adapter中響應? 對於這個問題,我最初給他的解答是,在Adapter中定義一個回撥介面,在Activity中實現該介面,從而實現對點選事件的響應。 下班後思考了一下,覺得有兩種方式都能

Android開發之實現多次事件

 使用Google提供的api中採用的演算法 能夠實現n次點選事件,我們需要定義一個n長度的陣列,每點選一次將數組裡的內容按序號整體向左移動一格,然後給n-1出即陣列的最後添加當前的時間,如果0個位置的時間大於當前時間減去1000毫秒的話,那麼證明在1000毫秒內點選了n次。實現如

Android完美處理RecyclerView實現item條目事件處理

前言: RecyclerView並沒有像ListView那樣提供了OnItemClick,OnItemLongClick等事件回撥介面,所以,我們需要自己寫介面去進行實現。 正題 ①、建立介面類OnRecyclerViewClickListener /** * Recy

Android按鈕實現事件的幾種方式

此方法整體看上去簡單易懂,個人比較常用 xml佈局 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.