Articles of android viewpager

如何将片段替换为TabLayout和ViewPager中的另一个片段

我想将片段替换为TabLayout Viewpager包含的另一个片段。 喜欢这个: 活动 – > 片段 – > B片段 (TabLayout ViewPager) – > C片段 (Tab片段) – > D片段 我的任务是将片段C切换到片段D. 注意: – TabLayout ViewPager还包含FragmentPagerAdapter的3个选项卡片段控件。 Tablayout片段的布局: <!– –> 片段B类: @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { view = inflater.inflate(R.layout.fragment_select_postpaid_service, container, false); tablayout = (TabLayout) view.findViewById(R.id.tablayout_postpaid_service); viewpager = (ViewPager) view.findViewById(R.id.viewpager_postpaid_service); viewpager.setAdapter(new TabPagerAdapter(getChildFragmentManager(), TabConstants.POSTPAID_SERVICE_TYPE_TABS_FLAG, TabConstants.POSTPAID_SERVICE_TYPE_TABS)); […]

在viewpager中具有不同内容的相同片段

嘿伙计们我遇到了严重的问题。 我有一个父片段,其中有viewpager和tablayout。 Viewpager保存具有与之关联的不同内容的片段。 每次思考都可以在滑动时正常工作,但每当我点击tablayout的不同选项卡时,SwipableFragment的categoryId和categoryName都会更改为相邻选项卡的SwipableFragmet到可见片段。 基本上当我启动FragmentAllNews(包含ViewPager)时,它会显示第二个片段/页面而不是第一个片段/页面,当我向第二个片段移动时,我会看到第三个…换句话说,它总是显示下一个或前一个片段/页面取决于滑动方向(左或右)。 对不起,我的英语不好 :( 这是我的Fragments和FragmentStatePagerAdater类 1 FragmentAllNews,它包含viewpager和tablayout public class FragmentAllNews extends Fragment { @Bind(R.id.tab_layout) TabLayout tabLayout; @Bind(R.id.all_news_viewpager) ViewPager viewPager; SessionManager sessionManager; String categoryId; String categoryName; ArrayList tabs; public static FragmentAllNews createNewInstance() { FragmentAllNews fragmentAllNews = new FragmentAllNews(); return fragmentAllNews; } @Override public void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); sessionManager = new SessionManager(getActivity()); […]

Android:Picasso没有加载一些图片

我正在使用Picasso从服务器获取图像并在viewpager中显示,但是我得到了一些奇怪的错误,我的一些图像没有显示,当我静态加载图像时它们正在显示但是当从服务器加载图像时他们消失了,尤其是在3岁之后。 这是我的ViewPagerAdapter.java : public Object instantiateItem(final ViewGroup container, int position) { layoutInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); View itemView = layoutInflater.inflate(R.layout.viewpager_item, container, false); /** * Loading the image view */ // Locate the ImageView in viewpager_item.xml ImageView sliderItem = (ImageView) itemView.findViewById(R.id.viewpagerImageView1); // Capture position and set to the ImageView /* if(requestCreatorListIterator.hasNext()) { requestCreatorListIterator.next().into(sliderItem); }*/ slider[position].into(sliderItem); //sliderItem.setImageResource(slider[position]); // […]

使用FragmentPagerAdapter在Android ViewPager中滑动不工作

我想为此创建一个滑动应用程序,我在Android中使用ViewPager 。 当我运行下面的代码时,它会成功运行并打开一个蓝色的Fragment ,但是滑动不起作用。 你能告诉我为什么吗? 这是我的Activity : package app.learn.com.learnapp; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentActivity; import android.support.v4.view.ViewPager; import android.os.Bundle; import java.util.List; import java.util.Vector; import menulistFrag.blueColor; import menulistFrag.greenColor; import menulistFrag.redColor; public class MenuActivityList1 extends FragmentActivity { ViewPager viewPager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_menu_activity_list1); viewPager = (ViewPager)findViewById(R.id.pager); instantiateFrags(); } public void instantiateFrags(){ List frags = new […]

如何在Roboelectric中模拟ViewPager上的拖动事件?

我是Android和Robolectric的新手。 我试图在viewpager上模拟(如主题所示)一个拖动事件。 我曾经实现过这个代码,它在模拟器上运行。 问题主要是:我如何对其进行unit testing? 这是unit testing: /** imports are skipped **/ @RunWith(RobolectricTestRunner.class) @Config(manifest = “/src/main/AndroidManifest.xml”) public class TestImages { private ImageActivity activity; @InjectResource(R.drawable.ic_launcher) private static Drawable image; @Spy private final PicturesModel picturesModel = spy(new PicturesModelImpl()); /** * Last touched view */ private View lastTouchView; /** * Last touched X coordinate */ private float lastTouchX; […]

在viewpager中垂直滚动

我有一个fragmentPagerAdapter viewpager ,里面有几个片段类。 因此,此viewpager使用滑动向左和向右水平滚动。 问题是,在每个页面上,我的值超出了页面大小,我需要垂直滚动才能看到它们。 但我无法启用任何垂直滚动。 我删除了所有的scrollview并将我的代码置于工作状态。 (我想要类似于Androidapp store的东西:水平滚动分类,垂直滚动查看应用。) 这是我的代码: MyFragmentPagerAdapter: 需要垂直滚动的片段活动: 以下是我的片段类的前几行,它们是相关的: public class MyFragmentDetails extends Fragment { private RelativeLayout ll; private FragmentActivity fa; DBAdapter db; // MyFragmentFuel fFuels; private String carSelected, m, y, lowestDistance, highestDistance; BroadcastReceiver receiver; int highestDay = 0; int lowestDay = 31; public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); } @SuppressWarnings(“static-access”) […]

使用滚动RecyclerView时如何在ViewPager中隐藏工具栏?

我在view-pager中有一个工具栏(带有水平滑动导航的选项卡式工具栏),每个选项卡都有自己的带有recyler_view的片段。 我现在想要在我的recyler_view滚动时隐藏工具栏。 在我的片段中,我添加了on scroll-listener,并希望在其activity类中调用一个方法来隐藏工具栏。 工具栏在活动中创建。 如何从我的片段中调用此方法? 或者在我的片段本身中实现这种隐藏方法会更好。 但是,我怎么能“联系”我的工具栏,这是在活动中而不是在片段中创建的。 我find了解决方案,但没有一个讨论片段中的recylcer_view和用于选项卡式导航的view-pager。 如果你可以帮助我会很棒……

以前的数据显示在ViewPager Android上

在我的应用程序中,我有一个带有CirclePageIndicator ,它正在工作。 它在One pager中显示两个项目。 当我滑动到另一个寻呼机时,它显示前一个项目。 我不想要它。 我希望一次刷两件物品。 不会显示已在寻呼机上显示的上一个。 这是我之前的问题,它与此有关。 在ViewPager android中显示两个项目 。 目前工作像 ItemA,ItemB | ItemB,ItemC | ItemC,ItemD | 我想要像 ItemA,ItemB | ItemC,ItemD | ItemE,ItemF | 这是我用来在一个寻呼机中显示两个项目的代码。 @Override public float getPageWidth(int position) { return(0.5f); } Adapter.class public class ViewPagerAdapter extends PagerAdapter { // Declare Variables Context context; String[] domain; String[] title; int[] flag; LayoutInflater inflater; […]

单个活动中的多个AsyncTaskLoader – 是否必须在onCreate中初始化每个加载器?

我有一个带有ViewPager的FragmentActivity – 这个ViewPager包含三个ListViews – 每个ListViews都有自己独特的适配器(和唯一的数据集)。 我想使用AsyncTaskLoader来填充这些适配器,但仅限于在ViewPager中选择给定视图时。 是否需要在activity的onCreate方法中初始化一个加载器? (下面的代码) @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_foo); getSupportLoaderManager().initLoader(0, null, this); getSupportLoaderManager().initLoader(1, null, this); getSupportLoaderManager().initLoader(2, null, this); } 或者可以交互式地调用initLoader(…),例如OnPageChangeListener.onPageSelected的监听器的结果? mPager.setOnPageChangeListener(new OnPageChangeListener() { @Override public void onPageSelected(int newPage) { getSupportLoaderManager().initLoader(newPage, null, this); } … } 如果用户可能只看到寻呼机中的第一个视图,我想避免必须预先执行3个耗时的加载器。 编辑:或者让ViewPager为每个视图使用Fragment是一个更好的设计,每个片段都负责管理自己的加载器?

在ViewPager或PagerAdapter中动态更改PagerIndicator的计数

我想要的是: 当页面宽度为一半时,底部圆圈指示符的数量必须是页面数量的一半。 当页面宽度已满时,底部圆圈指示符的数量必须与页数一样多。 还有另外一个要求: 当页面宽度为一半时,我可以在单个滚动中滚动两页吗? 当页面宽度已满时,在单个滚动中只滚动一页? 页面宽度由PagerAdapter#getPageWidth()获取 谁能为此提供完美的解决方案? 没有制作两个布局文件或两个适配器? 这是我为实现这个基于GIF的活动而开发的完整源代码。 问题改进将被接受。 https://github.com/raghavsatyadev/DemoPort