加入ImageSwitcher没有效果,只有上面的Gallery有用,下面是空白,代码我看了,好像没有问题
public class MainActivity extends Activity implements ViewSwitcher.ViewFactory,AdapterView.OnItemSelectedListener{
private Gallery gallery;
private ViewSwitcher viewSwitcher;
private Baseadapter baseadapter;
private int[]resoure={R.drawable.p1,R.drawable.p2,R.drawable.p3,R.drawable.p5,R.drawable.p6,
R.drawable.p7,R.drawable.p8,R.drawable.p9};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
viewSwitcher= (ViewSwitcher) findViewById(R.id.imageSwitcher);
gallery= (Gallery) findViewById(R.id.gallery);
baseadapter=new Baseadapter(resoure,this);
gallery.setAdapter(baseadapter);
gallery.setOnItemSelectedListener(this);
viewSwitcher.setFactory(this);
//为ViewSwitcher添加进出效果
viewSwitcher.setInAnimation(AnimationUtils.loadAnimation(this,android.R.anim.fade_in));
viewSwitcher.setOutAnimation(AnimationUtils.loadAnimation(this,android.R.anim.fade_out));
}
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
//加载图片资源
viewSwitcher.setBackgroundResource(resoure[i%resoure.length]);
}
@Override
public View makeView() {
ImageView imageView=new ImageView(this);
imageView.setScaleType(ImageView.ScaleType.CENTER);
return imageView;
}
@Override
public void onNothingSelected(AdapterView<?> adapterView) {
}
}