Articles of android viewpager

如何dynamic更新视图分页器项目标题

我有一个简单的消息应用程序模块。 其中有两个可滑动的标签。 收到并发送。 让我们说我有20个消息,其中10个是未读的。 所以我正在做的是显示标签为收到 – (10)。 现在当我阅读邮件时,它将邮件标记为已读。 所以我想把标题从收到 – (10)改为收到 – (9)。 请让我知道我该怎么做? 这是我正在使用的代码。 @Override public int getCount() { return 2; } @Override public CharSequence getPageTitle(int position) { if (position == 0) { // if position is zero, set the title to RECEIVED. return "Received" + " (" + String.valueOf(intUnreadReceivedMessagesCount) + ")"; } else […]

如何知道ViewPager已经在android中滚动了一半的屏幕

我想知道ViewPager的View已经滚动了一半或者没有? 当我拖动它,如果它已经覆盖了一半的屏幕,我想改变页面。 例如,如果我testingMDPI,即屏幕宽度320px,如果我拖动我的页面的ViewPager 160px然后我想改变页面。 如何从ViewPager中获得这个半视距?

Android的ListView刷卡删除就像在Gmail应用程序

在项目上的刷卡效果删除时,像在Gmail应用程序中显示实现ListView? 我曾尝试使用ViewPager作为ListView元素,但这是行不通的。 谢谢

使用Android的SlidingPaneLayout和ViewPager

我正在尝试像ViewPager一样使用SlidingPaneLayout <?xml version="1.0" encoding="utf-8"?> <android.support.v4.widget.SlidingPaneLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/scientific_graph_slidingPaneLayout" android:layout_width="match_parent" android:layout_height="match_parent"> <!– The first child view becomes the left pane. –> <ListView android:id="@+id/left_pane" android:layout_width="240dp" android:layout_height="match_parent" android:layout_gravity="left" /> <!– The second child becomes the right (content) pane. –> <android.support.v4.view.ViewPager android:id="@+id/scientific_graph_viewPager" android:layout_width="match_parent" android:layout_height="match_parent"> </android.support.v4.view.ViewPager> </android.support.v4.widget.SlidingPaneLayout> 当我从左边拉动时,SlidingPaneLayout滑动; 然而,当我从右边拉时,我似乎无法让ViewPager滑动。 当我从右边缘拉,它滑动很less,然后反弹。 这样做甚至可能吗? 有一个更好的方法吗? 我发现通过将手指向上移动到左侧,我可以滑动视图寻呼机。

问题与FragmentPagerAdapter

我试图用viewpager和片段制作一个幻灯片,这样我就可以为每个片段加载不同的布局,并为每个页面提供不同的function。 我跟着一个教程来完成这个。 hover在public Fragment getItem(int arg0)时出现的错误:返回types与FragmentPagerAdapter.getItem(int)不兼容 和错误#2:构造函数FragmentPagerAdapter(FragmentManager)是未定义的 – >hoversuper(fm);时得到这一个super(fm); package com.example.spui; import android.os.Bundle; import android.app.Fragment; import android.app.FragmentManager; import android.support.v4.app.FragmentPagerAdapter; public class MyFragmentPagerAdapter extends FragmentPagerAdapter{ final int PAGE_COUNT = 5; /** Constructor of the class */ public MyFragmentPagerAdapter(FragmentManager fm) { super(fm); } /** This method will be invoked when a page is requested to create */ […]

Android ViewPager使用不同的animation像放大,淡入淡出等

我创build了ViewPager,只有2个页面,当页面滚动页面到另一个页面时,我想把淡入,缩放,缩放,3d等animation,意味着第二个整个页面显示与特定的animation,我没有想法到如何做到这一点,请任何一个给我一个例子,当移动到另一个页面时,我们animation传呼机的animation。 主要我有三个类寻呼机:1)ViewPagerMainActivity:它在这里调用两个片段在这个主要样子如enter code here public class ViewPagerMainActivity extends FragmentActivity implements OnClickListener, OnPageChangeListener { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.view_pager_main); <other code here> } private class MyPagerAdapter extends FragmentPagerAdapter { public MyPagerAdapter( android.support.v4.app.FragmentManager fragmentManager) { super(fragmentManager); } @Override public Fragment getItem(int pos) { switch (pos) { case 0: return FirstFragment.newInstance(""); case 1: return SecondFragment.newInstance(""); […]

Android ViewPager在使用后台时的性能问题

我有一个由XML制作的Activity ,我已经将它的背景设置为我的可绘制文件夹中的背景图片。 在同一个活动中,我创build了一个ViewPager来允许在视图之间来回切换。 ViewPager所有视图ViewPager包含一个图像。 每当我向左或向右滑动时,转换非常缓慢。 我试图通过设置为白色(#fff)去除背景图像,所有的滞后都消失了。 它工作完美! 问题是我确实需要应用程序的背景。 有没有什么办法来优化背景图片或什么东西,所以刷卡将再次顺利? 目前由于滞后而使用太令人沮丧。 我也尝试将图像裁剪成小尺寸,然后将其延伸到屏幕上,但是我没有注意到任何性能改进。 此外,它不是位于ViewPager的图像错误,当我用TextViewstesting它,而不是相同的滞后。

ViewPager + FragmentStatePagerAdapter +方向更改

我有一点问题:我有一个页面的ViewPager,我使用FragmentStatePagerAdapter来处理数据。 在肖像中,我有例如ViewPager的20页和在景观中,我只有10页的ViewPager。 所以在一个方向改变我创build一个新的适配器与不同的数据。 这里有一个小的解释,为什么:我在纵向上显示一个图像,在横向上显示两个图像,但总是在数量上。 如果我有10张照片要显示,我有10张纵向照片和5张横向照片(总是两张)。 但现在我有一个奇怪的错误:当我在索引5的景观,并转动设备,ViewPager的当前页面设置为10.如果我把它又回来了,我在页面5上。如果我现在将页面刷到页面10适配器的方法getItem永远不会被调用,并且ViewPage向我显示一个肖像图片,而不是两个风景。 这怎么可能发生? 在适配器或ViewPager中是否有caching? 在Activity的onCreate中,一切都是新创build的,适配器以及ViewPager的数据(只是带有path的string)。 那么任何想法如何解决这个真正可怕的“function”? 这里是一些代码: 的onCreate: mViewPagerAdapter = new ReaderPageViewAdapter(getSupportFragmentManager(), getBaseContext(), mCurrentDocument.mPages, getResources() .getConfiguration().orientation); mPageReader = (ReaderViewPager) findViewById(R.id.pager); mPageReader.setAdapter(mViewPagerAdapter); 适配器getItem: public Fragment getItem(final int index) { final PageInfo pageInfo = mPages.get(index); final PageFragment pageFragment = (PageFragment) PageFragment .instantiate(mContext, pageInfo.mClss.getName(), pageInfo.mArgs); return pageFragment; } 如果你需要更多的东西,请告诉我。 谢谢

如何更新ViewPager内容?

我有这个PageAdapter与星期几,为每个传呼机我有相同的布局。 我的问题是如何更新右侧listView更改一天。 当我改变一天寻呼机创build一个新的寻呼机并删除其他,当发生这种情况我的列表视图指向新的寻呼机,但不是当前。 例如,是wedneyday,我保存列表视图引用,当我改变星期二星期一寻呼机是创build和星期四被删除,并且我的参考点到最后一页创build(星期一),但我在星期二。 我的页面适配器: ListView lvwConfig; @Override public Object instantiateItem(View pager, int position) { LayoutInflater inflater = (LayoutInflater) mContext .getSystemService(Context.LAYOUT_INFLATER_SERVICE); View v = inflater.inflate(R.layout.pager_layout, null); lvwConfig = (ListView) v.findViewById(R.id.lvwConfig); ((ViewPager) pager).addView(v, 0); return v; } 我想ListView总是指向当前项目的列表视图。

Viewpager和FragmentPagerAdapter:页面视图删除

我正在使用Viewpager和FragmentPagerAdapter来允许添加和删除页面。 每个页面显示从互联网上获得的数据。 当新页面被添加时,新的片段与该页面相关联。 数据通过AsyncTask获取并显示在Fragment中。 当用户select删除一个页面,这个想法是销毁页面和关联的片段。 一般来说,这一切运作良好。 我看到的问题如下: 你有三个页面的数据: [第1页] [第2页] [第3页] 你删除了最后一页以外的任何页面,比如第2页; 第2页消失如所愿: [第1页] [第3页] 你添加一个新的页面; 而不是空白的新页面,新页面显示页面3中的数据(视图)。 [第1页] [第3页] [第4页,但是显示第3页的视图/数据应该是空白] 我的活动页面删除代码如下: // Destroy fragment for this page DataListFragment curFrag = getFragmentByName(currentPage); FragmentManager fm = getSupportFragmentManager(); fm.beginTransaction().remove(curFrag).commit(); fm.executePendingTransactions(); curFrag = null; // Remove page and update adapter mPageTitles.remove(position); mAdapter.notifyDataSetChanged(); 使用debugging器,它显示在执行executePendingTransactions()调用之后,片段将从FragmentManager移除。 但在FrampePagerAdapters调用mAdapter.notifyDataSetChanged() ,片段被重新添加,然后在创build新页面时显示。 我尝试使用FrameStatePagerAdapter,因为这应该允许销毁碎片​​,但它不起作用。 在我的FragmentPagerAdapter的getItemPosition()方法中,我使用return FragmentAdapter.POSITION_NONE; 正如我在另一篇文章中指出的那样。 […]