SORU
18 EKİM 2011, Salı


Bir ViewPager üzerinde kaydırma devre dışı bırakmak mümkün

View bir başlatır ViewPager var. Arama sonucu görüntülemek için iade ederken viewpager kaydırma ve alt düğmeleri bir an için devre dışı bırakmak istiyorum. viewPager.setEnabled(false) arama yaptım ama bu devre dışı değil.

Herkes herhangi bir fikir var mı?

CEVAP
18 EKİM 2011, Salı


Basit bir çözüm private boolean bayrak isPagingEnabled ViewPager kendi alt oluşturun. onTouchEvent onInterceptTouchEvent yöntemleri geçersiz kılar. isPagingEnabled super yöntemi çağırmak eşittir, aksi takdirde return.

public class CustomViewPager extends ViewPager {

    private boolean isPagingEnabled = true;

    public CustomViewPager(Context context) {
        super(context);
    }

    public CustomViewPager(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    @Override
    public boolean onTouchEvent(MotionEvent event) {
        return this.isPagingEnabled && super.onTouchEvent(event);
    }

    @Override
    public boolean onInterceptTouchEvent(MotionEvent event) {
        return this.isPagingEnabled && super.onInterceptTouchEvent(event);
    }

    public void setPagingEnabled(boolean b) {
        this.isPagingEnabled = b;
    }
}

Layout.XML dosyası <com.yourpackage.CustomViewPager> etiketler <com.android.support.V4.ViewPager> etiketleri değiştirin.

Bu kodu blog post Bu uyarlanmıştır.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • dope2111

    dope2111

    29 HAZİRAN 2009
  • Plugable

    Plugable

    19 Mayıs 2010
  • Samantha Crain

    Samantha Cra

    30 EKİM 2008