我想从图像阵列中制作一个意图,但我不知道如何使用position
。意图与我创建的布局不匹配。
这里是代码:
private class ImagePagerAdapter extends PagerAdapter {
private int[] mImages = new int[] { R.drawable.kuhp_a,
R.drawable.kuhp_b, R.drawable.kuhp_c };
@Override
public int getCount() {
return mImages.length;
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view == ((ImageView) object);
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
Context context = MainActivity.this;
ImageView imageView = new ImageView(context);
imageView.setScaleType(ScaleType.FIT_XY);
imageView.setImageResource(mImages[position]);
Button btnOK = (Button) findViewById(R.id.btnOK);
if (position == 0) {
btnOK.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i = new Intent(MainActivity.this, FirstAct.class);
startActivity(i);
}
});
} else if (position == 1) {
btnOK.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i = new Intent(MainActivity.this,
SecondAct.class);
startActivity(i);
}
});
} else if (position == mImages.length - 1) {
btnOK.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i = new Intent(MainActivity.this, ThirdAct.class);
startActivity(i);
}
});
}
((ViewPager) container).addView(imageView, 0);
return imageView;
}
firstact:
public class FirstAct extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.buku_satu);
}
secondact和第三个具有相同的代码,如第一幕,但它有不同的布局。
答案 0 :(得分:0)
这样做
private class ImagePagerAdapter extends PagerAdapter {
private int[] mImages = new int[] { R.drawable.kuhp_a, R.drawable.kuhp_b, R.drawable.kuhp_c };
@Override
public int getCount() {
return mImages.length;
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view == ((ImageView) object);
}
@Override
public Object instantiateItem(ViewGroup container, final int position) {
Context context = MainActivity.this;
ImageView imageView = new ImageView(context);
imageView.setScaleType(ScaleType.FIT_XY);
imageView.setImageResource(mImages[position]);
final Button btnOK = (Button) findViewById(R.id.btnOK);
btnOK.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
switch (position) {
case 0:
Intent i = new Intent(MainActivity.this, FirstAct.class);
startActivity(i);
break;
case 1:
Intent i = new Intent(MainActivity.this, SecondAct.class);
startActivity(i);
break;
case 2:
Intent i = new Intent(MainActivity.this, ThirdAct.class);
startActivity(i);
break;
default:
break;
}
}
});
((ViewPager) container).addView(imageView, 0);
return imageView;
}
}