为了账号安全,请及时绑定邮箱和手机立即绑定

加入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) {
   }
}

正在回答

2 回答

我问题跟你一样,后来发现是LinearLayout的问题,没有加android:orientation="vertical"

0 回复 有任何疑惑可以回复我~

没看出来。。在监听方法里打个log日志看看能不能监听到事件?

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Android攻城狮的第二门课(第1季)
  • 参与学习       111140    人
  • 解答问题       1560    个

本课程由浅入深地带您学会Android的常用控件的开发和使用

进入课程

加入ImageSwitcher没有效果,只有上面的Gallery有用,下面是空白,代码我看了,好像没有问题

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号