経験の分かち合いの2はどのようにViewPagerのあるviewを選択します

1820 ワード

ViewPagerというコントロールは使い心地がいいですが、
指の動きに合わせてビューをスライドさせることもでき、
しかし、ビューを選択したい場合は、
そして注文して入ろうとすると、ちょっとした干戈がかかります.
解決策は以下の通りです.まずviewpagerのリスニングイベントを作成します.
viewPager.setOnPageChangeListener(new GuidePageChangeListener());
 
  
 

//            
	class GuidePageChangeListener implements OnPageChangeListener{
		boolean f1 = false;
		boolean f2 = false;
		@Override
		public void onPageScrollStateChanged(int arg0) {
			System.out.println("Changed arg0 is " + arg0+ "   currentitem is " +viewPager.getCurrentItem());
			if(arg0 == ViewPager.SCROLL_STATE_DRAGGING){
				f1 = true;
			}else if(arg0 == ViewPager.SCROLL_STATE_SETTLING){
				f2 = true;
			}else if (arg0 == ViewPager.SCROLL_STATE_IDLE && f1 == true && f2 == false) {
				System.out.println("**Changed2 arg0 is " + arg0+ "   currentitem is " +viewPager.getCurrentItem());
			}else {
				f2 = false;
				f1 = false;
			}
		}
		@Override
		public void onPageScrolled(int arg0, float arg1, int arg2) {
			//flag3 = false;
			//System.out.println("scrolled arg0 is "+arg0 +"  arg1 is "+ arg1+" arg2 " + arg2);
		}

		@Override
		public void onPageSelected(int arg0) {
		///	System.out.println("selected is " + arg0);
			f1 = false;
			f2 = false;
			}
		}

に、このonPageScrollStateChangedには3つの があり、 な は、 のapiを ることができます.
http://developer.android.com/reference/android/support/v4/view/ViewPager.SimpleOnPageChangeListener.html#onPageScrollStateChanged(int) 
そして、これらの を するだけで を に することができ、その のコードは でよく し、 することができます. は ではないはずですが、
さん、いい えがあれば、 に してもいいです.