我需要制作一个幻灯片,从不同的位图切换(位图来自我将其转换为图像的图像路径)。我想在ViewFlipper中只使用一个ImageView。我真的需要这个请帮助。
答案 0 :(得分:0)
您必须动态创建Imageview:
viewFlipper = (ViewFlipper) findViewById(R.id.flipper);
for(int i=0;i<image_array.length;i++)
{
ImageView image = new ImageView(getApplicationContext());
image.setBackgroundResource(res);
viewFlipper.addView(image);
}
这样您就可以避免在xml文件中创建多个图像视图。
另一种解决方案:
在xml文件中只创建一个ImageView的ViewFlipper:
<ViewFlipper
android:id="@+id/vf"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<ImageView
android:id="@+id/image_flipper"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:src="@drawable/ic_launcher" />
</RelativeLayout>
</ViewFlipper>
考虑到您有一个可以加载下一个图像的按钮,请在其onClick上写下以下代码:
int current_image=0;
ImageView imageView = (ImageView) findViewById(R.id.image_flipper);
f_next.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
current_image++;
imageView.setImageResource(image_array[current_image]);
viewFlipper.showNext();
}
});