2012-02-03 29 views
10

我有包含ViewPager片段。當我膨脹的佈局,我分配一個OnLongClick監聽器,如下所示:ViewPager OnLongClick監聽器不點火

mPager.setOnLongClickListener(mOnPagerLongClickListener); 

然而,當我在ViewPager執行長按,什麼都不會發生。我能做些什麼來完成這項工作?還是我需要將監聽器分配給ViewPager中的每個視圖?將監聽器分配給ViewPager包含的GridView似乎也不工作。

回答

3

藉口穿上查詢,但我能解決這個問題。這對你沒有任何幫助,但可能適合其他觀衆。

簡單的解決方案是直接指派監聽器的ImageView對象,而其分配給ViewPager的對象,即,分配viewPager.setOnLongClickListener將不會觸發任何東西。

因此,我們必須通過在instantiateItem(擴展PageAdapter類)onLongClickListeners初始化的ImageView:

imageView.setOnLongClickListener(new OnLongClickListener()){ 

    @Override 
    public boolean onLongClick(View v) { 
     // Do your stuff 
     return false; 
    } 
});