2017-07-26 71 views
0

我正在使用ViewPager切换图像,它的工作原理。 我有网格视图,当我点击它的图像。相同的图像打开OKay。但是,当我在图像之间切换时,它从开始离开第一个图像开始。例如Android在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

在你的陈述中,什么是“id”? – Panczur

回答

1

你需要显示你的ViewPager正常,并呼吁viewpager.setCurrentItem(itemIndex)去所选图像的位置。

你现在正在做的是用选定的一个替换第一个图像。因此,如果所选的不是第一个,则不显示图像0,并且所选的一个显示两次。