我有一個循環,通過一個圖像視圖數組運行,爲每個添加一個事件監聽器,我怎麼才能找出哪個圖像視圖在監聽器內被按下?Android,事件監聽器?
imageViewArray[i].setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
}
});
我有一個循環,通過一個圖像視圖數組運行,爲每個添加一個事件監聽器,我怎麼才能找出哪個圖像視圖在監聽器內被按下?Android,事件監聽器?
imageViewArray[i].setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
}
});
爲每個索引值設置id,例如:image_view.setId(i);
參照onClick
方法的v
參數是否提供對ImageView
的引用?
編輯
的事情是:你是不是在你的代碼添加相同的監聽到所有ImageView
S的 - 你的陣列中的每個ImageView
都有自己的監聽器。
在聽者的onClick
方法,引發該事件被傳在v
,所以用v
工作,當你使用點擊ImageView
工作View
。
要找到指數陣列中的ImageView
的,你不妨設定ID被別人的建議,然後用v.getId()
,或者你可以遍歷陣列,並且檢查是否imageViewArray[i] == v
,在這種情況下i
是數組中的ImageView
的索引。
imageView.getId()
將返回給您此ID給您ImageView
在findViewById()
方法。然後你可以在開關塊中檢查ID。希望這可以幫助。
我該如何在事件監聽器中獲取id? – beans
你可以做到這一點v.getId(); – Thiru