我使用ViewPager来切换图像并且它可以工作。 我有网格视图,当我点击它上面的图像。相同的图像打开好了。但是当我在图像之间切换时,它从头开始离开第一个。
例如,。 我有int [5]图像。 如果id = 3 然后它显示图像3 1 2 3 4.重复图像3并且不显示图像[0]。
如果我向右滑动,我希望它为4,如果我向左滑动则需要2。
如果你仍然无法理解。这是我的应用程序的视频链接。 https://youtu.be/HI-BYz4M8ms
@Override
public Object instantiateItem(ViewGroup viewGroup, int position)
{
if(position == 0) {
position = id;
}
ImageView imageView = new ImageView(context);
imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
imageView.setImageResource(images[position]);
viewGroup.addView(imageView);
return imageView;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
((ViewPager) container).removeView((ImageView) object);
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view == object;
}
答案 0 :(得分:1)
您需要正常显示ViewPager并致电viewpager.setCurrentItem(itemIndex)
以转到所选图片的位置。
您目前正在做的是用所选择的图像替换第一张图像。因此,如果所选择的不是第一个,则不显示图像0,并且所选择的图像显示两次。