关于Android 中ImageSwitcher的用法,网上搜索的结果,都要实现ViewFactory,并设置Factory,需写不少代码。经笔者实验,其实大可不必,大部分设置均可在IDE中完成,实现切换仅需二行代码。具体步骤如下:
第一步:新建Android应用程序项目
第二步:在res目录中创建子目录drawable
第三步:将待切换显示的图片(至少两幅)拖入drawable目录中,假设图片名为pic1.png、pic2.png……
第四步:在布局中添加一个ImageSwitcher,设置其id为img_swit,inAnimation属性为\”@android:anim/slide_in_left\”, outAnimation属性为\”@android:anim/slide_out_right\”
第五步:在ImageSwitcher视图容器中添加两个(只能两个)ImageView,其src属性分别为R.drawable.pic1,drawable.pic2
第六步:在布局中添加一个按钮(Button),设置其text属性为“切换”,On Click属性为swit_Click
第七步:在相应的Activity类文件中添加以下代码:
public void swit_Click(View v){
findViewById(R.id.img_swit).showNext();
}
********************************************************
当然以上仅实现了两幅图片之间的切换,如果要实现多幅图片的切换,仅需作以下更改:
⑴创建一个由drawable下所有图片的id组成的整数数组(私有全局):
int[] ids={R.drawable.pic1,R.drawable.pic2……};
⑵创建一个私有全局整形变量,表示当前使用的图片id在ids数组中的索引
int ind=0;
⑶更改按钮单击处理程序
public void swit_Click(View v){
if(ind<(ids.length-1) ind++;
else ind=0;
ImageSwitcher is=(ImageSwitcher)findViewById(R.id.img_swit);
ImageView iv=(ImageView)is.getNextView();
iv.setImageResource(ind);
is.showNext();
}