Articles of android viewpager

ListView中的ViewPager和OnItemClickListener

我正在创build一个滑动到解散列表视图适配器。 我的基本方法是将列表项的视图作为ViewPager中的第二个视图进行封装,并在ViewPager的项目更改侦听器中提供必要的callback。 通过很多痛苦,我已经使View回收站按预期工作,以及实现了ViewHolder和ViewBinder模式。 我甚至设法让ListView在ViewPager滚动的时候接pipe触摸事件,而不必制作一个ListView的自定义子类(我可以从Adapter中完成)。 我遇到麻烦的地方是让select器和OnItemClickListener工作。 在查看ListView的源代码之后,似乎通过覆盖ViewPager的hasFocusable()方法总是返回false(稍后我将从子视图中提取这个值),应该重新启用这些东西。 不幸的是,这种情况并非如此。 我已经尝试setDecendantFocusability()解决方法,我仍然坚持。 如果可能的话,我想避免扩展ListView,以提供最大的模块性。 由于类似的原因,我不想将select器添加到ViewPager的背景(如果开发人员更改ListView的select器,这将不会被反映)。 基本上,我正在寻求让ViewPager代码在ListView和子View之间透明。 有任何想法吗?

在ViewPager中的PagerTabStrip位置

我有以下代码: <android.support.v4.view.ViewPager android:id="@+id/main_pager" android:layout_width="match_parent" android:layout_height="match_parent" > <android.support.v4.view.PagerTabStrip android:id="@+id/pager_tab_strip" android:layout_width="match_parent" android:layout_height="wrap_content" /> </android.support.v4.view.ViewPager> 一切都得到了应有的地位。 我现在想要的是, PagerTabStrip覆盖ViewPager 。 它应该在顶部呈现,而不占用任何布局空间。 基本上,ViewPager中的片段应该像PagerTabStrip所做的那样从0,0开始。 任何帮助赞赏。 谢谢!

如何将浮动操作button排在一个片段上,只能在Tab布局中

我试图实现以下没有成功。我有两个材料devise刷卡tabs.I使用这个库 'com.oguzdev:CircularFloatingActionMenu:1.0.2'来实现FAB,但是当我滑动标签到第二个标签,FAB仍然附加到新的片段。 我想在第二个片段上隐藏FAB 。 有没有办法做到这一点?

Android ViewPager不能调用onDetach / onDestroy / onDestroyView在容器中进行replace

我有一个FrameLayout容器,在其中我使用replace方法来放置一个片段,当从导航抽屉select一个项目。 getSupportFragmentManager().beginTransaction().replace(R.id.container, fragment, fragment.getFragmentTag()).commit(); 我有一个其中有一个ViewPager的片段。 我有3个片段与ViewPager显示在一个选项卡布局。 当我从导航抽屉中select另一个项目时,带有ViewPager的片段将被replace,但片段内的片段不会被分离。 系统仅使用ViewPager onDetach / onDestroy等方法调用片段,而不调用其包含的片段的方法。 我正在使用FragmentPagerAdapter,我尝试使用FragmentStatePager适配器。 没有什么变化。 我正在使用默认的setOffscreenPageLimit(1); 我怎样才能得到我的ViewPager片段方法onDetach / onDestroy调用? 谢谢!

使用ViewPager实现像iOS应用程序一样closures垂直滑动即可closures的function

我目前有ViewPager水平排列的视图,并可以循环他们与PagerAdapter。 目前,为了执行我想要刷卡的操作,我必须在视图的页面上双击。 我可以发布代码,但是提取必要的作品有些困难… 我想要的是在这些视图上垂直滑动的能力,让它们通过轻扫和淡出垂直翻译,然后在距离设备边缘一定距离时执行一个动作。 要了解我在想什么,在“图库”应用程序中,您可以捏合打开的照片以缩小并打开水平幻灯片视图。 从那里你可以向上(或向下)的照片/video删除它。 对于那些没有相同的图库应用程序,这就像在iOS上closures应用程序。 我已经尝试扫描图库应用程序的源代码,但没有find正确的活动运气。

BottomSheetDialogFragment中的ViewPager

我试图在BottomSheetDialogFragment中设置一个viewpager,但总是有相同的结果: java.lang.IllegalStateException:Fragment没有视图 setupDialog 码: @Override public void setupDialog(Dialog dialog, int style) { Log.d(TAG, "setupDialog"); super.setupDialog(dialog, style); View root = View.inflate(getContext(), R.layout.fragment_daily_detail, null); dialog.setContentView(root); CoordinatorLayout.LayoutParams layoutParams = (CoordinatorLayout.LayoutParams) ((View) root.getParent()).getLayoutParams(); CoordinatorLayout.Behavior behavior = layoutParams.getBehavior(); if (behavior != null && behavior instanceof BottomSheetBehavior) { bottomSheetBehavior = (BottomSheetBehavior) behavior; bottomSheetBehavior.setBottomSheetCallback(mBottomSheetBehaviorCallback); bottomSheetBehavior.setPeekHeight((int) getResources().getDimension(R.dimen.fragment_forgot_password_min_height)); Log.d(TAG, "State: " + bottomSheetBehavior.getState()); imageClose […]

片段中的ViewPager在返回时丢失内容

我正在实施tabhost使用FragmentActivity ,在第一个选项卡下我加载一个包含一个CirclePageIndIcator和CirclePageIndIcator的欢迎片段,我需要加载4个视图在CirclePageIndIcator 这是我的WelcomeFragment public class WelcomeFragment extends Fragment { PageAdapter mAdapter; ViewPager mPager; CirclePageIndicator mIndicator; List<Fragment> fragments; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.frag_welcome_layout,null); mPager=(ViewPager)view.findViewById(R.id.myViewPager); mIndicator=(CirclePageIndicator)view.findViewById(R.id.circlePageIndicator1); fragments=new ArrayList<Fragment>(); return view; } @Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); Fragment fragment; for(int i=0;i<4;i++) { fragment= Fragment.instantiate(getActivity(), TipsFragment.class.getName()); fragments.add(fragment); } […]

ViewPager – 并不总是调用onCreateView

我有一个10页的ViewPager。 当我启动最后(第10)页onCreateView()我的片段的方法被调用。 当我滑动到第9页onCreateView()也被调用。 但是当我回到第十页onCreateView()没有被调用。 怎么了?

Android ViewPager维度

ViewPager必须是活动布局中唯一存在的对象吗? 我试图执行这样的事情: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/reader_layout" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <android.support.v4.view.ViewPager android:id="@+id/page_viewer" android:layout_width="match_parent" android:layout_height="wrap_content" /> <Gallery android:id="@+id/miniatures_gallery" android:layout_width="match_parent" android:layout_height="wrap_content" /></LinearLayout> 在哪里应该有一个大的传呼机在顶部滚动(我有它)和一个较小的画廊滚动下。 这显示了我只有寻呼机,而不是画廊。 任何build议?

在ViewPager中devise一个Horizo​​ntalScrollView或者使用fragment:

我需要devise下面的屏幕,我需要你的build议: 说明: 标题是静态的/固定的,我不需要做任何事情。 黄色:这是一个有趣的部分,我需要devise一个ViewPager类似的屏幕,可以向左/向右滚动最大4个屏幕。 红色:在每个屏幕上,我需要添加一个表格/网格,如果不适合屏幕尺寸,也可以滚动。 绿色:可以使用屏幕底部的绿色button或通过滚动ViewPager来完成页面切换。 问题是:这种行为可以使用ViewPager实现,还是应该使用Fragments ? 如果片段是要走的路,那么我将如何使用滑动手势来实现页面切换? 如果它是一个ViewPager然后如何添加内部滚动,以及如何使用底部的button来控制它? 任何帮助将不胜感激,谢谢。