저는 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'를 전달할 수 없기 때문에 첫 번째 이미지를 표시하고 내가 클릭 한 이미지가 아닙니다. 클릭 한 이미지의 '위치'. SlideImage.class에서이 메소드의 위치를 취하고있다.
Object instantiateItem(ViewGroup container, int position)
첫 번째 위치이다. fullImageActivity.class에서이 줄의 위치로 전달하고 싶습니다.
imageView.setImageResource(GalImages[position]);
SlideshowActivity에 있습니다.
이것은 복잡해 보이지만 FullImageActivity.class의 위치 값을 SlideImage.class로 전달하려고합니다. 나에게