Articles of android viewpager

与ViewPager一起使用时出错TextInputLayout时出错

看起来TextInputLayout在ViewPager 。 错误是: 扩展类android.support.design.widget.TextInputLayout时出错 添加了Appcompat和Design library 。 Theme是正确的。 我使用PageAdapter来充气和填充ViewPager 。 TextInputLayout视图在应用程序的所有其他部分中都很好地膨胀 。 我为ViewPager充气的layout 。

循环ViewPager。 片段在第一轮之后不能正常工作

好的,所以我需要循环ViewPager。 我真的很难实现它。 现在我已经实现了它并且它正在工作正常,因为圆形滚动是关注。 但是我注意到了一个问题。这是在第一轮滚动片段不起作用之后。 我有三个碎片,里面有一个按钮。 按钮在第一轮工作,但当我回到第一页按钮不起作用。 ps我使用假页面技术使viewpager循环。 这是代码 mViewPager.setAdapter(new PagerAdapter(getSupportFragmentManager(), this)); //mViewPager.setOnPageChangeListener(new CircularViewPagerHandler(mViewPager)); mViewPager.setCurrentItem(1, false); mViewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { } @Override public void onPageSelected(int position) { if (position == 0) { mViewPager.setCurrentItem(3, false); Log.d(“TAG”, “Swiped before first page, looping and resetting to last page.”); } else […]

应用程序恢复时android.support.v4.app.Fragment.setUserVisibleHint空指针

我在片段代码中的应用程序的简历上崩溃了。 我自己从未见过这次崩溃,但我收到了来自用户通过TestFlight的崩溃报告。 我想有些东西是我遗漏的,因为代码在大多数机器上运行良好。 任何帮助将不胜感激。 这是调用堆栈。 java.lang.NullPointerException android.support.v4.app.Fragment.setUserVisibleHint in Fragment.java on Line 819 android.support.v4.app.FragmentPagerAdapter.setPrimaryItem in FragmentPagerAdapter.java on Line 130 android.support.v4.view.ViewPager.populate in ViewPager.java on Line 1066 android.support.v4.view.ViewPager.populate in ViewPager.java on Line 914 android.support.v4.view.ViewPager.onMeasure in ViewPager.java on Line 1436 android.view.View.measure in View.java on Line 15323 android.view.ViewGroup.measureChildWithMargins in ViewGroup.java on Line 4924 android.widget.LinearLayout.measureChildBeforeLayout in LinearLayout.java on Line 1421 android.widget.LinearLayout.measureVertical […]

在回收商内部的cardview中进行滑动图像的最佳方法是什么?

我有一个带Cardview的RecyclerView 。 我想要在这个CardView中滑动图像,就像在OLX应用程序中一样。 这样做的最佳方法是什么? 我想将viewpager放在cardview中。 它还可以,或者我应该尝试别的吗? 我用ViewPager做到了,但看起来太慢了。 这是viewpager适配器的一部分。 @Override public Object instantiateItem(ViewGroup collection, int position) { LayoutInflater inflater = LayoutInflater.from(mContext); ViewGroup layout = (ViewGroup) inflater.inflate(R.layout.viewpager_custom, collection, false); collection.addView(layout); ImageView image = (ImageView) layout.findViewById(R.id.viewPagerImageView); image.setImageResource(mPics[position]); return layout; }

ViewPager片段娱乐,恢复但不可见

我有一个ViewPager + FragmentPageAdapter的问题。 场景:我在片段A中有一个活动。片段A有一个带有片段B1和片段B2的ViewPager。 B1 e B2是相同的类,但不同的数据作为参数。 问题:创建时一切都很好。 但是当应用程序进入后台并且进程被android杀死时,尝试恢复最后状态,再次启动应用程序,片段B1 e B2在前景中不可见,而片段A是。 有点奇怪的是,片段B1和B2在片段A的ChildFragmentManager中,并且由于onStart()和onResume()被调用(由Log看到)而被恢复。 此外,寻呼机恢复两页,但空或更好,没有任何可见。 如果我很清楚FragmentPagerAdapter是如何工作的,那么它应该负责管理自己的片段以及如何重新创建片段。 此外,为了强制执行这一点,如果已经存在具有指定标记的该位置的片段,则FragmentPagerAdapter在从后台返回时不会调用getItem(int position)。 …那么为什么我看不到Fragment B1 e B2,只有传呼机空了? 这是我的示例代码。 FragmentA @Override public void onStart() { super.onStart(); populateViewPager(); } private void populateViewPager() { pager.setAdapter(new MyFragmentPageAdapter(getChildFragmentManager())); indicator.setViewPager(pager); indicator.notifyDataSetChanged(); } FragmentPagerAdapter public class MyFragmentPageAdapter extends FragmentPagerAdapter { public MyFragmentPageAdapter(FragmentManager fm) { super(fm); } @Override public Fragment […]

在ScrollViews中使用带有ViewPagers的ScrollViews的Android ViewPager

所以我的活动有一个主ViewPager,在ViewPager里面,每个页面都有一个ScrollView的内容,而在ScrollView里面还有另一个ViewPager。 这可能听起来很疯狂,但基本上外部的ViewPager包含新闻文章,文章很长,所以有一个ScrollView,在ScrollView中有多个缩略图/图片,他们也可以刷过。 我尝试了一些不同的自定义ViewPagers,它们具有不同的触摸事件拦截,但似乎无法完美。 它要么完全吸收所有触摸事件,要么ScrollView的垂直滚动在该区域不起作用,否则将使内部水平滚动非常敏感/困难。 有人有完美的解决方案吗?

使用通用图像加载程序查看寻呼机内存不足错误

我不确定带有通用图像加载器的ViewPager是否可以/应该用作类似接口的库,因为我在从SD卡加载图像并以全屏模式查看时遇到内存不足错误。 无论数字是多少,它都适用于GridView,但在查看寻呼机中查看图像时,每个位图都会占用大量内存,在10个左右的图像之后,它会出现内存不足错误。 我已经看到这里发布的几乎所有问题都与使用Universal Image Loader时的内存不足错误有关,并且在每一个问题中都存在配置错误。 我不知道我是否使用了错误的配置或什么,但我浪费了很多时间,并且有点卡住,任何帮助/建议将不胜感激。 ImageLoader的配置: ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(getApplicationContext()) .memoryCache(new WeakMemoryCache()) .denyCacheImageMultipleSizesInMemory() .discCacheFileNameGenerator(new Md5FileNameGenerator()) .imageDownloader(new ExtendedImageDownloader(getApplicationContext())) .tasksProcessingOrder(QueueProcessingType.LIFO) // .enableLogging() // Not necessary in common .build(); 显示图像选项包括: options = new DisplayImageOptions.Builder() .showImageForEmptyUri(R.drawable.image_for_empty_url) .resetViewBeforeLoading() .imageScaleType(ImageScaleType.IN_SAMPLE_INT) .bitmapConfig(Bitmap.Config.RGB_565) .displayer(new FadeInBitmapDisplayer(300)) .build(); 我正在使用随库提供的示例项目,但这些设置也不起作用,它只是在一段时间后崩溃。 我的猜测是有一个特定的回调,我必须从视图中回收不可见的位图。 编辑:我知道它的内存泄漏,不可见的视图会被破坏,但内存不会被释放。 下面是destroyItem回调的实现,遵循不同问题中给出的提示,但仍然无法find内存泄漏。 @Override public void destroyItem(View container, int position, Object object) { // […]

如何将片段添加到ViewPager? addView崩溃我的应用程序

我正在使用Android启动新Android应用程序时启动的默认滑动选项卡片段代码。 我已经弄清楚如何修改我的数据并使用选项卡,但我还没想出如何将一个简单的片段添加到已经存在的内容中。 我想在标签的顶部或正下方添加一个信息栏。 我确定这很简单,我只是无法弄清楚怎么哈哈。 我通过例子学习。 我已经尝试为viewpager添加一个视图,但我的应用程序崩溃了,我相信我做错了。 在我的MainActivity中:… protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); // Set up the action bar. final ActionBar actionBar = getActionBar(); actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); mSectionsPagerAdapter = new SectionsPagerAdapter( getSupportFragmentManager()); // Set up the ViewPager with the sections adapter. mViewPager = (ViewPager) findViewById(R.id.pager); mViewPager.setAdapter(mSectionsPagerAdapter); SubBarFragment infobar = new SubBarFragment(); mViewPager.addView(infobar.getView()); …..[extra code for menus […]

直到我滑动它才会显示ViewPager标题

我正在学习使用ViewPager和PagerTabStrip来实现导航栏。 我已经实现了它,我的问题是:每次我打开应用程序时,标题都没有显示,但是在我刷了一次后,标题全部再次出现,然后一切正常。 代码如下所示: 定制适配器 public class MyPagerAdapter extends PagerAdapter { private List viewList; private List titleList; public MyPagerAdapter(List viewList, List titleList){ this.viewList = viewList; this.titleList = titleList; } @Override public int getCount() { return viewList.size(); } @Override public boolean isViewFromObject(View view, Object o) { return view == o; } @Override public Object instantiateItem(ViewGroup container, int […]

(ActionBar)选项卡+寻呼机+详细信息ViewPager容器内的碎片

对于ActionBarSherlock,我想要(Action Bar)Tabs + Pager。 我在该寻呼机容器中使用Fragments。 我已经得到了http://actionbarsherlock.com/工作的例子,但是当我点击第一个片段中的一个listitem时,我无法设法在该寻呼机容器中获取一个细节片段。 有这样的事情是不可能的: Tabs和pager容器的活动 片段Tab1下的内部寻呼机容器 单击片段A中的内容并在Tab1下的同一个寻呼机容器中显示片段B. 然后片段A不可见,只有片段B可见,但也可见所有标签。 目前我认为只有一个新的活动(在其中包含片段B)可以在片段A中单击某些内容后启动。