2016-03-05 31 views
1

我的應用需求是處理網格視圖上的點擊事件和長按事件。如何處理事件點擊和長按gridview android?

我已經嘗試了兩個,但沒有長時間按下事件工作。

如果我刪除長按事件,然後單擊事件工作。

但是,當我嘗試把這兩個事件,然後只有長按事件工作。

所以我怎麼能在網格視圖android上實現這兩個事件。

我有搜索很多東西,但沒有得到完美的解決方案任何人有解決方案或想法然後幫我。

在此先感謝。

代碼: -

gv.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
@Override 
public void onItemClick(AdapterView<?> av, View v, int pos, long id) { 
    onGridItemClick(v,pos,id); 
} 
}); 

protected void onGridItemClick(View v, int pos, long id) { 
Log.i(TAG, "onItemClick id=" + id); 
} 

gv.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() { 
@Override 
public boolean onItemLongClick(AdapterView<?> av, View v, int pos, long id) { 
    return onLongGridItemClick(v,pos,id); 
} 
}); 

protected boolean onLongGridItemClick(View v, int pos, long id) { 
Log.i(TAG, "onLongGridItemClick id=" + id); 
return true; 
} 
+0

顯示您的代碼。 – UMESH0492

+0

返回true將阻止點擊事件繼續。然後,它只會執行OnItemLongClickListener .. – Nitesh

+0

我已嘗試返回false但不工作 –

回答

0

你應該返回false在您長按監聽。這種方式不會消耗事件並將其傳遞給物品點擊偵聽器。

protected boolean onLongGridItemClick(View v, int pos, long id) { 
    Log.i(TAG, "onLongGridItemClick id=" + id); 
    return false; 
} 
+0

感謝您的回覆,但不工作 –

相關問題