У меня есть несколько изображений, которые я показываю в gridview. что я хочу, когда я нажимаю это изображение, оно должно отображаться в полноэкранном режиме. Я также поставил viewpager на скользящую функциональность. проблема, с которой я сталкиваюсь, - это когда я нажимаю на изображение, на котором отображается первое изображение (а не одно).Невозможно отобразить отобранное изображение
он является моей основной деятельностью
public class Ppdtsample extends Activity {
GridView grid;
static int[] imageId = { R.drawable.ppdt1, R.drawable.ppdt2,
R.drawable.ppdt3, R.drawable.ppdt4, R.drawable.ppdt5,
R.drawable.ppdt6, R.drawable.ppdt7, };
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.ppdtsamples);
ImageAdapter adapter = new ImageAdapter(Ppdtsample.this, imageId);
grid=(GridView)findViewById(R.id.grid_view);
grid.setAdapter(adapter);
grid.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// TODO Auto-generated method stub
Intent i = new Intent(getApplicationContext(), FullImageActivity.class);
// passing array index
i.putExtra("id", position);
startActivity(i);
}
});
}
}
это моя деятельность будет отображаться в полноэкранном режиме с выдвижной функциональностью:
public class FullImageActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.full_image);
// get intent data
Intent i = getIntent();
// Selected image id
int position = i.getExtras().getInt("id");
// passing array index
ViewPager viewPager = (ViewPager) findViewById(R.id.view_pager);
viewPager.setBackgroundResource(0);
SlideImage adapter = new SlideImage(this);
viewPager.setAdapter(adapter);
}
}
и это мой класс для ViewPager
public class SlideImage extends PagerAdapter {
Context context;
private int[] GalImages = { R.drawable.ppdt1, R.drawable.ppdt2,
R.drawable.ppdt3, R.drawable.ppdt4, R.drawable.ppdt5,
R.drawable.ppdt6, R.drawable.ppdt7, };
SlideImage(Context context) {
this.context = context;
}
@Override
public int getCount() {
return GalImages.length;
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view == ((ImageView) object);
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
ImageView imageView = new ImageView(context);
int padding = context.getResources().getDimensionPixelSize(R.dimen.activity_vertical_margin);
imageView.setPadding(padding, padding, padding, padding);
imageView.setScaleType(ImageView.ScaleType.FIT_XY);
imageView.setImageResource(GalImages[position]);
((ViewPager) container).addView(imageView, 0);
return imageView;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
((ViewPager) container).removeView((ImageView) object);
}
}
он отображает первое изображение, а не изображение, которое я нажимаю, потому что я не могу передать 'p osition 'щелкнутого изображения. он занимает позицию по этому методу в SlideImage.class
Object instantiateItem(ViewGroup container, int position)
, который является первой позицией. я хочу передать позицию из fullImageActivity.class в положение в этой линии
imageView.setImageResource(GalImages[position]);
, который находится на SlideshowActivity.
Это может показаться сложным, но я просто хочу передать значение позиции из FullImageActivity.class в SlideImage.class. Пожалуйста, помогите мне