我的活动中有一个用于图像滑块的查看寻呼机 当我尝试在某些Android设备(例如xiaomim,note 8设备)中滑动到另一个页面时,出现问题,viewPager的移动变得沉重
这是我的代码:
override fun isViewFromObject(view: View, p1: Any): Boolean {
return view == p1
}
//
override fun instantiateItem(container: ViewGroup, position: Int): Any {
val itemView: View = LayoutInflater.from(container.context).inflate(R.layout.image_slider_view, container, false)
val mSliderImage: ImageView = itemView.findViewById(R.id.slider_image)
Glide.with(itemView).load(images[position]).into(mSliderImage)
itemView.setOnClickListener {
if (clickable) {
val intent = Intent(itemView.context, ImageSliderActivity::class.java)
intent.putExtra("slider", images)
intent.putExtra("position", position)
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP) {
val activityOptions = ActivityOptions.makeSceneTransitionAnimation(activity)
itemView.context.startActivity(intent, activityOptions.toBundle())
} else {
itemView.context.startActivity(intent)
}
}
}
container.addView(itemView)
Util.rotateViewsIfRTL(itemView)
return itemView
}
override fun destroyItem(container: ViewGroup, position: Int, `object`: Any) {
(container as ViewPager).removeView(`object` as View)
}
override fun getCount(): Int {
return images.count()
}
答案 0 :(得分:0)
我不知道您拥有多少张图像,以及它们的大小,我曾经在viewpager
中遇到图像问题。
在我的情况下,我有10张以上的图像,每张图像的权重都超过800kb,我检查了此问题,如果我将OffscreenPageLimit更改为1页,并且尝试减小图像的尺寸,它确实可以正常工作!
viewPager.setOffscreenPageLimit(1);
答案 1 :(得分:0)
尝试以下操作,
首先,而不是图像,加载任何随机字符串或整数,并测试它是否仍然滚动过多。如果工作正常,则意味着图像很重。
如果图像较重,请检查以下内容:
更有效的方式 使用卧式回收机视图。