6

पर नियंत्रण करना मुझे दो व्यूपेजर को एक साथ सिंक्रनाइज़ करने की आवश्यकता है। आवश्यकता ViewPager-1 को स्क्रॉल करने जैसी कुछ है और ViewPager-2 को कुछ निश्चित राशि से भी स्क्रॉल करना चाहिए। नीचे दिखाया गया चित्र आपको मेरे प्रश्न के साथ और अधिक स्पष्ट कर देगा।दो व्यूपेजर को

enter image description here

तुम भी मुझे कुछ ट्यूटोरियल के लिंक के साथ कर सकते हैं। धन्यवाद।

उत्तर

2

आपको एक कस्टम दृश्य बना सकते हैं और निम्नलिखित तरीके से onTouchEvent() ओवरराइड करने के लिए में ViewPager विस्तार कर सकते हैं:

 @Override 
     public boolean onTouchEvent(MotionEvent event) { 

      if(mDependentView != null){ 
      mDependentView.onTouchEvent(event); 
      } 
      return super.onTouchEvent(event); 
     } 

इसके अलावा dependentView

public void setDependentView(View view){ 
    mDependentView = view; 
} 
सेट करने के लिए अपने कस्टम वर्ग के भीतर एक सेटर बनाने

फिर आपको दूसरी गतिविधि को अपनी गतिविधि में पहले व्यूपर के आश्रित दृश्य के रूप में सेट करना चाहिए।

13

मुझे लगता है कि यह है कि तुम क्या जरूरत है:

 viewpager1.setOnTouchListener(new OnTouchListener() { 
      @Override 
      public boolean onTouch(View v, MotionEvent event) { 
       viewpager2.onTouchEvent(event); 
       return false; 
      } 
     }); 

     viewpager2.setOnTouchListener(new OnTouchListener() { 
      @Override 
      public boolean onTouch(View v, MotionEvent event) { 
       viewpager1.onTouchEvent(event); 
       return false; 
      } 
     }); 

मैं एक ही समस्या है, लेकिन पहले मैं fakeDragBy विधि है, जो मृत अंत है उपयोग करने के लिए प्रयास करें। (यदि आपके पास दो से अधिक पृष्ठ हैं)

+0

बहुत अच्छा और प्रभावी समाधान। धन्यवाद! –

+1

इस तकनीक का उपयोग करके, यदि आप दोनों दृश्य पेजर्स को एक साथ स्पर्श करते हैं तो मुझे एक क्रैश मिलता है। मैं इसके बजाय यहां दृष्टिकोण का उपयोग कर समाप्त हुआ: https://stackoverflow.com/a/26513243/369480 – gnuf