Я искал решение этой проблемы с двух дней, но не удался. Я просмотрел пейджер, чтобы отобразить информацию о представлении списка в приложении. Когда swiped показывает, детали следующего элемента списка. У меня есть требование просмотра горизонтального списка внутри пейджера просмотра одного элемента. Теперь моя проблема здесь. Когда я хочу пронести этот список горизонтального списка. Весь элемент пейджера получает Swiped. Я также обрабатывал событие «Прикосновение» для моего горизонтального списка, чтобы запретить Размах действие View пейджер, но до сих пор Посмотреть пейджер получает swiped.Please помочь мне, ниже мой кодViewpager disable swipe Проблема при касании горизонтального списка внутри него
CustomViewPager.Java
import com.devpoint.adapter.HorizontalListView;
import android.content.Context;
import android.graphics.Rect;
import android.support.v4.view.ViewPager;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.view.View;
public class CustomViewPager extends ViewPager {
private boolean scrollDisable = false;
public CustomViewPager(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
public boolean onInterceptTouchEvent(MotionEvent ev) {
if(scrollDisable) {
return false;
} else {
return super.onInterceptTouchEvent(ev);
}
}
public void disableScroll() {
scrollDisable = true;
}
public void enableScroll() {
scrollDisable = false;
}
}
И это мой один элемент из Посмотреть пейджер пункта
details_item.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#FFFFFF" >
<ScrollView
android:id="@+id/scrollviewid"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="2dp" >
------------------------
<android.support.v7.widget.CardView
xmlns:card_view="http://schemas.android.com/apk/res-auto"
android:id="@+id/cardview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="@dimen/padding_medium"
android:background="#FFFFFF"
android:clickable="true"
android:orientation="vertical"
android:padding="35dp"
card_view:cardCornerRadius="@dimen/padding_radius" >
<TableRow
android:layout_width="match_parent"
android:layout_height="170dp"
android:background="#FFFFFF"
android:gravity="center_horizontal"
android:orientation="horizontal" >
<com.devpoint.adapter.HorizontalListView
android:id="@+id/gridview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:columnWidth="60dp"
android:horizontalSpacing="10dp"
android:numColumns="3"
android:padding="10dp"
android:stretchMode="columnWidth"
android:verticalSpacing="10dp" />
</TableRow>
</android.support.v7.widget.CardView>
</ScrollView>
</RelativeLayout>
и я перевалено сенсорный элемент для горизонтального Listview Внутри адаптера в
cardview.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View arg0,
MotionEvent ev) {
switch(ev.getAction()) {
case MotionEvent.ACTION_DOWN:
DetailsViewpagerFragment.viewPager.disableScroll();
//enable swiping
scrollview.setEnabled(false);
break;
case MotionEvent.ACTION_MOVE:
DetailsViewpagerFragment.viewPager.disableScroll();
scrollview.setEnabled(false);
break;
case MotionEvent.ACTION_UP:
DetailsViewpagerFragment.viewPager.enableScroll();
scrollview.setEnabled(true);
break;
}
return false;
}
});
Примечание: Я использую фрагменты в Мой Application.Thank You
Любая помощь будет очень очень очень ... благодарностью .
Попробуйте эту ссылку: http://stackoverflow.com/questions/9650265/how-do-disable-paging-by-swiping-with-finger-in-viewpager-but-still-be-able- to-s – KishuDroid