Articles of android viewpager

突出显示或下划线选定的TabPageIndicator

我有一个平板大小的横向布局的双面板,我正在使用片段。 在左边我有一个listview的片段。 当其中一个项目列表发生点击时,右边的片段将加载细节。 在右边(细节)片段的布局中有一个com.viewpagerindicator.TabPageIndicator和一个android.support.v4.view.ViewPager. ViewPager将加载2个元素,每个元素都有它的com.viewpagerindicator.TabPageIndicator 。 我试图突出显示或加下划线,但我没有做到这一点。 我希望你有一些build议:)

PagerTabStrip中的文本在第一次显示时不显示

我有以下简单的设置: swipeable.xml <LinearLayout android:id="@+id/content_frame" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <include layout="@layout/toolbar" /> <android.support.v4.view.ViewPager android:id="@+id/pager" android:layout_width="match_parent" android:layout_height="match_parent" > <android.support.v4.view.PagerTabStrip android:layout_width="match_parent" android:layout_height="wrap_content"/> </android.support.v4.view.ViewPager> </LinearLayout> 活动: public class InfoActivity extends ActionBarActivity { private static final int[][] KEYS = { { R.string.usage, R.string.usage_text }, { R.string.data_protection, R.string.data_protection_text }, { R.string.impressum, R.string.impressum_text } }; @Override protected void onCreate( Bundle savedInstanceState ) […]

在Viewpager中映射v2 SupportMapFragment

背景 我已经成功地添加了新的地图api v2.0到一个ViewPager和地图加载罚款。 我正在使用FragmentViewPager。 我遇到了麻烦,但是当试图添加标记,因为我无法通过标记获取片段,因为我使用的ViewPager来自兼容性库,并以XML定义,并且“隐藏”了我的标记。 问题 如何将带有标记SupportMapFragment的新的Map v2加载到使用FragmentPagerAdapter的ViewPager中。 我的尝试 所以在我的小姐,我认为可以通过将SupportMapFragment扩展到一个新的类来创build一个优雅的解决scheme: 添加一个带有GoogleMapOptions和List<MarkerOptions>的新构造函数。 这有效地调用了只需要GoogleMapsOptions的现有构造函数,然后将我的标记列表存储在新类的私有属性中。 覆盖GetMap() – 检查它是否为null,如果它不是将标记添加到我们先前加载到地图上的地图上,最后返回它。 我的想法是,我的扩展可能是高度可重用的,并抽象出与某个地方相关的任何地图,并允许我的活动通过newInstance(myGoogleMapOptions, myMarkers)创build新的MapFragment。 好的问题。 第1部分似乎工作正常,但在debugging过程中,我无法获取重写的GetMap()方法被调用。 事实上,我已经尝试覆盖大部分碎片所具有的通常的方法,而且没有一个被调用。 有没有什么奇怪的与SupportMapFragmemt进行,我试图find它的来源无济于事自我检查。 更新 我意识到为什么我没有得到我称为重写的方法。 这是因为我返回了标准的SupportMapFragment而不是MyMapFragment 。 这就是说,我不能从一个静态方法调用超级,我不能从一个基类到一个派生类没有例外。 编辑这里是class级 public class MyMapFragment extends SupportMapFragment { private static List<MarkerOptions> mMarkers; public static SupportMapFragment newInstance(GoogleMapOptions options, List<MarkerOptions> markers) { SupportMapFragment fragment = newInstance(options); mMarkers = markers; return fragment; } […]

更改ViewPager的animation风格

我想使用Androidanimation框架来改变Android的ViewPager类的animation风格。 可能吗?

另一个CoordinatorLayout中的CoordinatorLayout

CorodinatorLayout在另一个CoordinatorLayout这样滚动子视图也应该滚动父CoordinatorLayout 。 我有一个ViewPager包含不同的Fragment这样在Scroll将隐藏tabLayout 我有一个viewPager另一个viewPager 。 该fragment在父片段的ViewPager (父Coordinator layout )中被夸大。 问题是onScrolling的子片段只反映在子childViewpager coordinator layout ,而不是父coordinator layout ,我需要做隐藏tablayout 。 结构是: CoordinatorLayout(p) ->(tablayout(p) & ViewPager(p) -> CoordinatorLayout(c) ->(tablayout(c) & ViewPAger(c) ->recyclerView(cc))) p -> parent; c -> child; cc -> child to child 如何使滚动回收站视图将影响两个协调员布局,以便工具栏tablayout(p)将获得隐藏。

如何自定义CirclePageIndicator?

我正在使用ViewPager和PagerAdapter来获取Android应用程序中的XML的幻灯片。 我正在使用CirclePageIndicator为页面编号。 如何定制当前页面对应的圆圈的颜色?

android viewpager更改适配器

我正在开发一个横向滚动表的ViewPager的应用程序,有时我需要更改适配器加载一组不同的表。 我试图做到以下几点: mViewPager.setAdapter(new pagerAdapterPushed(getSupportFragmentManager())); mViewPager.getAdapter().notifyDataSetChanged(); indicator.setViewPager(mViewPager); indicator.invalidate(); mViewPager.invalidate(); 但它总是重新加载以前的数据。 难道不能更改ViewPager的适配器吗?

Android如何停止刷新选项卡上的碎片更改

我有以下代码: MainActivity.java package com.erc.library; import java.io.BufferedInputStream; import java.io.File; import java.io.FileOutputStream; import java.io.InputStream; import java.net.URL; import java.net.URLConnection; import android.app.ActionBar; import android.app.ActionBar.Tab; import android.app.FragmentTransaction; import android.content.SharedPreferences; import android.content.res.Resources; import android.graphics.Color; import android.os.Bundle; import android.os.Environment; import android.os.StrictMode; import android.support.v4.app.FragmentActivity; import android.support.v4.view.ViewPager; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; import android.widget.TextView; import android.widget.Toast; import com.erc.sayeghlibrary.adapter.TabsPagerAdapter; public class MainActivity extends FragmentActivity […]

如何在viewPager页面之间自动切换

我有一个Android应用程序,使用两个页面的ViewPager当活动第一次显示时,我想将每个页面依次展示给用户,以便他们知道他们可以在两个视图之间滑动。 我没有find任何文件描述如何做到这一点。 我发现听起来很有希望的PageTransformations,但用户必须先滑动。 一旦ViewPager中的第一页显示,我需要两页自动滚动。 怎样才能达到预期的效果?

修复圆形ViewPager的animation

目标 构build一个循环ViewPager。 第一个元素可以让你顶点到最后一个元素,并滑动到它,反之亦然。 你应该可以永远向任何一个方向滑动。 现在这已经完成了,但这些问题不适用于我的实施。 这里有几个供参考: 如何创build圆形viewpager? ViewPager作为循环队列/包装 https://github.com/antonyt/InfiniteViewPager 我试图解决这个问题 我们将使用一个大小为7的数组作为例子。 要素如下: [0][1][2][3][4][5][6] 当你在元素0时,ViewPagers不会让你向左滑动! 多糟糕:(为了解决这个问题,我在前面加了1个元素。 [0][1][2][3][4][5][6] // Original [0][1][2][3][4][5][6][7][8] // New mapping 当ViewPageAdapter要求(instantiateItem())元素0时,我们返回元素7.当ViewPageAdapter要求元素8时,我们返回元素1。 同样,在ViewPager的OnPageChangeListener中,当onPageSelected被调用0时,我们setCurrentItem(7),当它被调用8时,我们setCurrentItem(1)。 这工作。 问题 当您从1到0向左滑动,并设置当前项目(7)时,它将以6个全屏幕一路向右移动。 这并没有给出一个圆形的ViewPager的外观,它给出了用户请求用他们的滑动动作所反向的最后一个元素的外观! 这非常刺耳。 我试图解决这个问题 我的第一个倾向是closures顺利(即全部)animation。 这有点好一点,但是当你从最后一个元素移到第一个元素时,它会变得不稳定,反之亦然。 然后我做了自己的Scroller。 http://developer.android.com/reference/android/widget/Scroller.html 我发现, 除了当我从1移动到7和7移动到1时,在元素之间移动时始终有1次调用startScroll()。 第一个电话是正确的方向和金额的animation​​。 第二个调用是通过多个页面向右移动一切的animation。 这是事情非常棘手的地方。 我认为解决办法是跳过第二个animation。 所以我做了。 会发生什么是一个平稳的animation从1到7,0打嗝。 完善! 但是,如果你滑动,甚至点击屏幕,你在元素6突然(没有animation)! 如果你已经从7秒刷新到1秒,那么你实际上是元素2.没有调用setCurrentItem(2),甚至没有调用OnPageChangeListener,表示你在任何时候到达2。 但是你实际上并不在元素2中,这很好。 你仍然在元素1,但元素2的视图将被显示。 然后,当你向左滑动,你去元素1.即使你真的在元素1 ..如何帮助清除一些代码: animation是破碎的,但没有怪异的副作用 @Override public void startScroll(int startX, […]