java - 我想同时自动刷 3 视图寻呼机
问题描述
我试图在同一个活动上自动刷三个 ViewPager,每个 viewPager 都在一个片段内,每个 viewPager 必须循环 5 个图像,当我的计时器开始刷第一个 viewPager 时它工作正常,但是当我开始第二个时,我的应用程序崩溃并告诉孩子们已经有了父母。
所以我的问题是如何同时自动刷 3 viewPager?我尝试将 viewPager 不带片段并开始滑动它们,但应用程序崩溃并出现相同的错误,当我手动滑动它们时它也会崩溃。
java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent first.
at android.view.ViewGroup.addViewInner(ViewGroup.java:5161)
at android.view.ViewGroup.addView(ViewGroup.java:4991)
at android.support.v4.view.ViewPager.addView(ViewPager.java:1485)
at android.view.ViewGroup.addView(ViewGroup.java:4931)
at android.view.ViewGroup.addView(ViewGroup.java:4904)
at appName.Data.MiddleAdapter.instantiateItem(MiddleAdapter.java:33)
// Line that crashes the app
@Override
public Object instantiateItem(@NonNull ViewGroup container, int position)
ImageView image = images.get(position);
container.addView(image);
return image;
其他 3 个视图寻呼机具有确切的行,当只有一个被激活时它工作正常。
解决方案
在您的自定义适配器中添加此方法
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
((ViewPager) container).removeView(itemView); }
推荐阅读
- roslyn - 如何为方法的所有参数提供修复 (Roslyn - FixProvider)
- ios - 如何使捆绑显示名称长度超过 12 个字符
- reactjs - 反应姿势翻转动画,例如缩略图全屏
- excel - 对象变量或未设置块变量 - 运行时错误“91”
- mongodb - 如何使用 pymongo MongoClient 构造函数在给定时间限制后中止 mongo 操作?
- c++ - 计算斐波那契的模板元编程
- c++ - boost::any 如何检查空值/未定义值
- python - 矩阵的numpy multiply()中出现意外的尖括号“<”
- laravel-4 - 在 Laravel 4 上更新 Imagemagick
- javascript - 是否可以在没有 Photoshop 的情况下在 html、css 或 javascript 的文本中附加图像?