相关疑难解决方法(0)

如何通过在ViewPager中用手指滑动来禁用分页,但仍然能够以编程方式滑动?

我有ViewPager,在它下面我有10个按钮.通过单击按钮,例如#4,寻呼机立即转到第4页mPager.setCurrentItem(3);.但是,我想通过水平手指滑动来禁用分页.因此,寻呼完成通过点击按钮.那么,我怎么能用手指禁用滑动?

android android-viewpager

521
推荐指数
17
解决办法
29万
查看次数

禁用在FragmentActivity中的选项卡之间滑动

我有一个(Sherlock)FragmentActivity和2个标签片段.左边的片段是一个显示相册图片的GridView,右边的片段包含一个用于查看单个图片的ViewPager.从左侧片段中,您可以滚动图片并选择一个.对正确片段进行跳格(或滑动)将显示图片,因为它是ViewPager,您可以滑动到上一张或下一张图片.

除了FragmentActivity想拦截右侧滑动并向后移动到左侧选项卡之外,这种方法效果很好.当我在右侧选项卡上时,我想阻止FragmentActivity拦截滑动.如果我不得不完全禁用标签之间的滑动,那将是令人满意的.我只想将滑动专用于当前选项卡而不是用于在选项卡之间移动.

以下图像表示当前行为.右图显示了向右滑动时发生的情况.如您所见,左侧标签开始出现.我希望滑动仅应用于右侧选项卡,以便我可以在图像之间滑动而不显示左侧选项卡.

在此输入图像描述

我看到了在ViewPager中控制滑动的解决方案,但还没有找到控制选项卡片段之间滑动的解决方案.

这是GridView片段和ViewPager片段的xml:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent"
              android:orientation="vertical">
  <FrameLayout android:id="@android:id/tabcontent"
               android:layout_width="fill_parent"
               android:layout_height="fill_parent">
    <GridView xmlns:android="http://schemas.android.com/apk/res/android"
              android:id="@+id/gridview"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent"
              android:columnWidth="100dip"
              android:gravity="center"
              android:horizontalSpacing="4dip"
              android:numColumns="auto_fit"
              android:stretchMode="columnWidth"
              android:verticalSpacing="4dip" />
  </FrameLayout>
</LinearLayout>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent"
              android:orientation="vertical">

  <android.support.v4.view.ViewPager xmlns:android="http://schemas.android.com/apk/res/android"
                                     android:id="@+id/pager"
                                     android:layout_width="fill_parent"
                                     android:layout_height="0px"
                                     android:layout_weight="1"/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

这里是ViewPager片段的代码摘要:

public class FragmentFlash extends SherlockFragment {

   private GestureDetector gestureDetector;
   View.OnTouchListener gestureListener;
   private ViewPager pager = null;
   private int pagerPosition;

   @Override
      public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      pagerPosition = 0;
      // Gesture detection
      gestureDetector = new GestureDetector(new MyGestureDetector());
      gestureListener = …
Run Code Online (Sandbox Code Playgroud)

android android-fragments actionbarsherlock

12
推荐指数
2
解决办法
2万
查看次数

在SlidingTabLayout中制作标签不会滑动

我最近使用SlidingTabLayout两个标签创建了一个应用程序.我提到了这个链接

滑动标签

但是我不得不稍微修改一下.我不得不添加一个按钮来锁定标签的滑动.再次点击它时解锁它.所以我只是无法让标签不滑动.

我检查了这个问题禁用在选项卡之间滑动.但是他正在使用其他一些库来完成它并且它不再受支持.我正在使用默认的.在那个问题中,CustomViewPager扩展了android.support.v4.view.ViewPager.在我的项目中,ViewPagerAdapter扩展了FragmentStatePagerAdapter.

任何帮助都会非常有用.谢谢.

android android-fragments pagerslidingtabstrip

6
推荐指数
1
解决办法
1340
查看次数