android笔记14-Gallery

Gallery:动态图片的滚动效果;

用imageSwitch来做详细图片的浏览即大图预览;与imageView相似,但可以指定图片切换的动画效果;

Gallery已经不推荐使用了;推荐使用横向的scrollView或ViewPager;

步骤:
 第一步(数据源):创建一个int数组,来记录图片的id;
 第二步:在xml文件中创建gallery控件;创建gallery对象,并完成初始化操作;
 第三步(准备自定义适配器):创建一个adapter的类,继承自BaseAdapter,重写构造方法,传入数据源和上下文信息(context),实现类的方法:
 getCount()
{
  return res.length;
}

getItem(int position)
{
  return res[position];为
}

getItemId(int position)
{
  return position;
}

getView(int position , View convertView, ViewGroup )
{
   ImageView image = new ImageView(context);
   image.setBackgroundResource(res[position]);
   image.setLayoutParams(new Gallery.ayoutParams(w,h));
     //设置缩略图的宽高信息;
  image.setScaleType(ScaleType.FIT_XY);
    //设置缩略图;
   return image;
}

 第三步:声明数据适配器,实例化并传入两个参数,让Gallery加载适配器;

第四步:创建一个gallery的监听器onItemSelectedListener();在onItemSelected()中;


设置Gallery的无限循环:在adapter的类中,修改getCount的返回值return Integer.MAX_VALUE;在修改getView中的position参数:令position=position%res.length;

创建ImageSwitcher:
 创建ImageSwitcher控件,声明并初始化ImageSwitcher;implements ViewFactory,实现makeView方法;调用imageSwitcher的方法setFactory(this);
 view makeView()
 {
    ImageView image = new ImageView(this);
    image.setScaleType(ScaleType.FIT_CENTER);//等比例缩放;
    return image;
 }
在onItemSelected()实现ImageSwitcher.setBackgroundResource(res[position%res.length]);在onCreate中设置imageSwitcher的动画setInAnimation(AnimationUtils.loadAnimation(this,android.R.anim.fade_in));//淡入的效果;
setOutAnimation(AnimationUtils.loadAnimation(this,android.R.anim.fade_out));



自定义数据适配器:自由度与灵活度更大;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值