Created
January 19, 2014 19:43
-
-
Save yuksbg/8510012 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
final ViewPager vp = (ViewPager) findViewById(R.id.top_imageViewPager); | |
vp.setPageMargin(-50); | |
vp.setHorizontalFadingEdgeEnabled(false); | |
vp.setFadingEdgeLength(30); | |
adapter = new ImageViewAdapterClubObekt(cnt, snimki_top); | |
vp.setAdapter(adapter); | |
vp.setOnTouchListener(new View.OnTouchListener() { | |
int dragthreshold = 30; | |
int downX; | |
int downY; | |
@Override | |
public boolean onTouch(View v, MotionEvent event) { | |
ScrollView mScrollView = (ScrollView) findViewById(R.id.scrrol_view_obekt); | |
switch (event.getAction()) { | |
case MotionEvent.ACTION_DOWN: | |
downX = (int) event.getRawX(); | |
downY = (int) event.getRawY(); | |
break; | |
case MotionEvent.ACTION_MOVE: | |
int distanceX = Math.abs((int) event.getRawX() - downX); | |
int distanceY = Math.abs((int) event.getRawY() - downY); | |
if (distanceY > distanceX && distanceY > dragthreshold) { | |
vp.getParent().requestDisallowInterceptTouchEvent(false); | |
mScrollView.getParent().requestDisallowInterceptTouchEvent(true); | |
} else if (distanceX > distanceY && distanceX > dragthreshold) { | |
vp.getParent().requestDisallowInterceptTouchEvent(true); | |
mScrollView.getParent().requestDisallowInterceptTouchEvent(false); | |
} | |
break; | |
case MotionEvent.ACTION_UP: | |
mScrollView.getParent().requestDisallowInterceptTouchEvent(false); | |
vp.getParent().requestDisallowInterceptTouchEvent(false); | |
break; | |
} | |
return false; | |
} | |
}); | |
vp.setOnPageChangeListener(new OnPageChangeListener() { | |
@Override | |
public void onPageScrollStateChanged(int arg0) { | |
} | |
@Override | |
public void onPageScrolled(int arg0, float arg1, int arg2) { | |
} | |
@Override | |
public void onPageSelected(int position) { | |
switch (position) { | |
case 0: | |
menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN); | |
break; | |
default: | |
menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_MARGIN); | |
break; | |
} | |
} | |
}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment