Gallery与ImageSwitcher总结
来源:互联网 发布:拾柒软件下载 编辑:程序博客网 时间:2024/06/06 00:01
Gallery(画廊)已经过时了,但是不影响使用
本例是Gallery与ImageSwitcher结合使用案例
上代码先
public class GalleryActivity extends BaseActivity implements ViewSwitcher.ViewFactory { //数据源 private int[] imageRes = new int[]{R.mipmap.a1, R.mipmap.a2, R.mipmap.a3, R.mipmap.a4, R.mipmap.a5, R.mipmap.a6, R.mipmap.a7, R.mipmap.a8, R.mipmap.a9,}; private Gallery gallery; private ImageSwitcher imageSwitcher; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.gallery_layout); gallery = (Gallery) findViewById(R.id.gallery); //加载适配器 gallery.setAdapter(new MyAdapter(this, imageRes)); imageSwitcher = (ImageSwitcher) findViewById(R.id.imageSwitcher); imageSwitcher.setFactory(this); imageSwitcher.setInAnimation(AnimationUtils.loadAnimation(this, android.R.anim.fade_in)); imageSwitcher.setOutAnimation(AnimationUtils.loadAnimation(this, android.R.anim.fade_out)); gallery.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { imageSwitcher.setBackgroundResource(imageRes[position % imageRes.length]); } @Override public void onNothingSelected(AdapterView<?> parent) { } }); } @Override public View makeView() { ImageView iv = new ImageView(this); iv.setScaleType(ImageView.ScaleType.FIT_CENTER); return iv; } //配置适配器 class MyAdapter extends BaseAdapter { private Context context; private int[] imageRes; MyAdapter(Context context, int[] imageRes) { this.context = context; this.imageRes = imageRes; } @Override public int getCount() { return Integer.MAX_VALUE;//近乎无限,保证能够循环播放 } @Override public Object getItem(int position) { return imageRes[position]; } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { ImageView imageView = new ImageView(context); //加载图片 imageView.setBackgroundResource(imageRes[position % imageRes.length]);//将图片循环播放 //设置大小 imageView.setLayoutParams(new Gallery.LayoutParams(200, 300)); imageView.setScaleType(ImageView.ScaleType.FIT_XY); return imageView; } }}
- 构造适配器,本例选择BaseAdapter,(FIT_XY是将x,y轴拉伸,不保持比例)
- 加载适配器
- 重写makeView方法,返回一个imageView类型(FIT_CENTER保持图片比例拉伸)
监听器setOnItemSelectedListener
imageSwitcher:
- activity继承ViewFactory 类
- imageSwitcher.setFactory(context)
- setInAnimation与setOutAnimation设置动画
- imageSwitcher.setBackgroundResource加载
0 0
- Gallery与ImageSwitcher总结
- android Gallery与ImageSwitcher结合实例应用总结
- ImageSwitcher与gallery图片浏览
- Gallery、ImageSwitcher
- Gallery与ImageSwitcher的综合使用
- Android基础篇之ImageSwitcher与Gallery
- Gallery 与ImageSwitcher的结合使用
- Gallery 与ImageSwitcher的结合使用
- Gallery与ImageSwitcher结合的简单实现
- Android--Gallery与ImageSwitcher制作图片浏览器
- Android笔记之Gallery与ImageSwitcher
- Gallery与ImageSwitcher的图片显示
- 画廊布局(ImageSwitcher与Gallery)
- Eg:Gallery与ImageSwitcher结合的图片浏览小程序
- (简单图片浏览器)imageSwitcher与gallery结合应用
- ImageSwitcher的使用(一):与Gallery配合使用
- gallery ,imageSwitcher 结合使用
- Gallery和ImageSwitcher实例
- 多线程基础
- Java基础复习
- 拨号键盘
- TOJ 2801.Binary Trees(二叉树后序转中序)
- 《产品前线:48位一线互联网产品经理的智慧与实战》读书笔记4
- Gallery与ImageSwitcher总结
- Android中一键退出程序方法
- 【codeforces711B】Bus to Udayland
- 数据库分库分表(sharding)系列(二) 全局主键生成策略
- 短信聊天
- C++重要术语解释
- 深入理解计算机系统(读书笔记)
- 【专题总结】网络流与二分图(持续更新)
- MYSQL的安装步骤