2012-02-03 12 views
10

私はViewPagerを含むフラグメントを持っています。私はレイアウトを膨らませるときは、次のように、私はそれにOnLongClickリスナーを割り当てる:ViewPager OnLongClickリスナーが起動しない

mPager.setOnLongClickListener(mOnPagerLongClickListener); 

を私はViewPagerに長いクリックを実行するときしかし、何も起こりません。この仕事をするために私は何ができますか?または、代わりにViewPagerのすべてのビューにリスナーを割り当てる必要がありますか? ViewPagerに含まれているGridViewにリスナーを割り当てることは、どちらも機能していないようです。

答えて

3

質問をしないでくださいが、私は問題を解決することができます。それはあなたにとって有益なことではありませんが、他の視聴者にとっては便利です。

簡単な解決策は、ViewPagerのオブジェクトに割り当てる代わりに、ImageViewのオブジェクトに直接リスナーを割り当てることです。つまり、viewPager.setOnLongClickListenerを割り当てることで何も発生しません。

imageView.setOnLongClickListener(new OnLongClickListener()){ 

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

そこで、我々はによってinstantiateItem(中PageAdapterを拡張するクラスのonLongClickListeners)とImageViewのを初期化する必要があります

関連する問題