Articles of fragmentpageradapter

FragmentPagerAdapter滑动以显示ListView 1/3屏幕宽度

编辑: 请参阅下面的答案 – > 我想要一个视图,当向右滑动时,会显示listView。 与新版Google Play商店中实施的内容非常相似(下面的示例图片)。 我认为它是一个ViewPager,但我尝试重复它没有占上风。 我认为可能只是’listView Page’width属性设置为特定的dp但不起作用。 我也尝试修改pakerfeldt的viewFlow并且无法弄清楚Google是如何做到这一点的 我是在正确的轨道上吗? 如果有人知道如何复制这个,我会非常感激。 我认为这可能成为在平板电脑上显示导航视图的一种流行的新方式….? 代码将是最好的帮助。 谢谢!! 向右滑动: 刷完; 布局显示列表和第二部分(完全如图所示)列表片段未填满屏幕: 当用户向左滑动时,仅显示主页面,如果用户再次向左滑动,则viewPager继续到下一页面。

使用getItemPosition(Object object)重新排序FragmentStatePagerAdapter中的页面

我相信当重写getItemPosition(Object object)时,FragmentStatePagerAdapter的行为不正确,目的是重新排序页面。 下面是一个简单的例子。 在初始状态中,页面的顺序是{A,B,C}。 在调用toggleState() ,页面的顺序变为{A,C,B}。 通过重写getItemPosition(Object object) ,我们确保正在查看的当前页面(A,B或C)不会更改。 public static class TestPagerAdapter extends FragmentStatePagerAdapter { private boolean mState = true; public TestPagerAdapter(FragmentManager fragmentManager) { super(fragmentManager); } @Override public int getCount() { return 3; } private void toggleState() { mState = !mState; notifyDataSetChanged(); } private String getLabel(int position) { switch (position) { case 0: return […]

IllegalStateException:应用程序的PagerAdapter在不调用PagerAdapter#notifyDataSetChanged的情况下更改了适配器的内容

我正在使用ViewPager示例,其中包含从Android文档中获取的ActionBar选项卡。 不幸的是,只要我调用addTab方法,应用程序崩溃就会出现以下exception: IllegalStateException:应用程序的PagerAdapter在不调用PagerAdapter#notifyDataSetChanged的情况下更改了适配器的内容! 预期的适配器项目数0,find1。 这是FragmentPagerAdapter代码: public static class TabsAdapter extends FragmentPagerAdapter implements ActionBar.TabListener, ViewPager.OnPageChangeListener { private final Context mContext; private final ActionBar mActionBar; private final ViewPager mViewPager; private final ArrayList mTabs = new ArrayList(); static final class TabInfo { private final Class clss; private final Bundle args; TabInfo(Class _class, Bundle _args) { clss = _class; […]

FragmentPagerAdapter notifyDataSetChanged不起作用

我有一个FragmentPagerAdapter。 它的getItem方法可以根据它从外部获得的数据返回一个片段。 我更新数据后,假设显示我调用notifyDataSetChanged但没有任何反应。 我DID覆盖getItemPosition方法以返回POSITION_NONE : public static class TabsAdapter extends FragmentPagerAdapter implements TabHost.OnTabChangeListener, ViewPager.OnPageChangeListener { private final Context mContext; private final TabHost mTabHost; private final ViewPager mViewPager; private final ArrayList mTabs = new ArrayList(); private PagerTabsFragments fragmentDisplayInfo = null; // for now only a // single size // back // stack static class PagerTabsFragments { […]

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

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

如何使用PagerAdapterreplaceViewPager中的片段?

我的问题 我正在使用ViewPager在FragmentActivity显示片段。 ViewPager从附加的FragmentPagerAdapter获取片段。 mViewPager = (ViewPager) findViewById(R.id.view_pager); mAdapter = new HomePagerAdapter(getSupportFragmentManager()); mViewPager.setAdapter(mAdapter); 假设ViewPager有3个片段可以显示: Fragment1 , Fragment2 , Fragment3 。 Fragment1是一个网格片段,并显示一个网格。 Fragment2和Fragment3有自己的内容要显示。 当在屏幕上使用滑动, ViewPager将显示下一个片段 – Fragment2 。 等等。 我想要的是? 我想要的是,当网格中的项目(由Fragment1显示)被点击时, Fragment1应该完全replace为其他片段,比如说Fragment4 (这是不同的片段,不会被连接的适配器返回)。 用户将在Fragment4工作,并在ButtonBack点击(就在Fragment4旁边的button)后,带有网格的Fragment1应该再次显示。 同时ViewPager应该performance相同,即在滑动,下一个片段(在我们的情况下, Fragment2 )将被显示。 所以我只想得到像在例子中一样的行为: http : //developer.android.com/training/basics/fragments/fragment-ui.html#Replace 我的问题 那么,这有可能实现吗? 如果是,那么如何? 我将非常感谢您的帮助。 亚历克斯。 PS对不起,我的英文:)

与ListFragment FragmentPagerAdapter getItem错误

我已经看了很多代码,不知道这一点。 http://developer.android.com/reference/android/support/v4/app/FragmentPagerAdapter.html 它必须是简单的东西。 我展示了大部分的代码。 错误在下一节。 public class MainActivity extends FragmentActivity implements ActionBar.TabListener { public static final int TAB_COUNT = 3; public static InputMethodManager inputManager; SectionsPagerAdapter mSectionsPagerAdapter; ViewPager mViewPager; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mSectionsPagerAdapter = new SectionsPagerAdapter( getSupportFragmentManager()); // Set up the action bar. final ActionBar actionBar = getActionBar(); actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); mViewPager = […]

如何从FragmentPagerAdapter中删除片段?

我知道这里有一些关于这方面的话题,但我找不到解决scheme,我可以为我的案件工作。 我有一个工作滑animation廊使用自定义FragmentActivity和FragmentPagerAdapter ,其中包含碎片列表。 在FragmentActivity是一个ImageView “删除”。 如果点击,函数deleteMedia()被调用,然后应该删除当前的Fragment并且应该显示下面的Fragment 。 在我的例子中,我将如何做到这一点? FragmentActivity: public class GalleryPagerActivity extends FragmentActivity implements OnClickListener { private Intent intent; private SharedPreferences settings; private PagerAdapter mPagerAdapter; private ViewPager mPager; private List<Fragment> fragments; private List<WhiteboardMedia> wiList; private int selectedPosition; private LinearLayout llTop; private TextView tvTop; private ImageView delete; private ImageView share; private TextView tvCounter; private TextView […]

使用ViewPager + FragmentPagerAdapter处理方向更改

我无法通过ViewPager和FragmentPagerAdapter处理屏幕方向更改。 它在应用程序启动时工作正常,但在方向改变(可能丢失)后viewpager内的片段不可见。 我该如何解决这个问题。 以下是我的活动的结构: 编辑:这是清单文件 <?xml version="1.0" encoding="utf-8"?> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.GET_ACCOUNTS" /> <uses-permission android:name="android.permission.USE_CREDENTIALS" /> <application android:name="com.test.myapp.NetworkManager.TBVolleyInstance" android:allowBackup="true" android:icon="@drawable/launcher" android:label="@string/app_name" android:theme="@style/CustomActionBarTheme"> <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> <activity android:name=".Home" android:label="@string/app_name" android:windowSoftInputMode="adjustNothing" > </activity> <activity android:name=".RouterActivity" android:label="@string/app_name" > <intent-filter android:label="@string/app_name" > <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> […]

未添加片段(不一致的崩溃)

在我的MainActivity ,我有: @Override protected void onResume() { super.onResume(); checkForCrashes(); checkForTutorial(); checkForUpdates(); setStore(); setup(); } 在setup() ,我在callback中调用了initializeTabs() : protected void setup() { final Store s = getStore(); setBackground(); if (s == null) { unauthorizedHandler(); return; } final Context mainActivity = this; fragments = getTabFragments(); StoresController.getStoreDetails(s, mainActivity, new Callback<StoreDetailDecorator>() { @Override public void success(StoreDetailDecorator storeDetailDecorator, Response response) […]