Gallery使用示例(二)
发布日期:2021-06-30 11:23:14
浏览次数:2
分类:技术文章
本文共 2237 字,大约阅读时间需要 7 分钟。
main.xml如下:
MainActivity如下:
import android.os.Bundle;import android.app.Activity;import android.view.View;import android.view.ViewGroup;import android.widget.AdapterView;import android.widget.BaseAdapter;import android.widget.Gallery;import android.widget.ImageView;import android.widget.Toast;import android.widget.AdapterView.OnItemClickListener;/** * Demo描述: * 利用Gallery预览图片.点击其中的某张图片时 * 将该图片在ImageView中显示 * */public class MainActivity extends Activity { private int imagesID []= null; private Gallery mGallery; private ImageView mImageView; private BaseAdapter mBaseAdapter; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); init(); mGallery.setAdapter(mBaseAdapter); //mGallery初始时显示的图片 mGallery.setSelection(imagesID.length/2); mGallery.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView parent, View view,int position, long id) { Toast.makeText(getApplicationContext(), "点击了第" + (position + 1) + "张图片", Toast.LENGTH_SHORT).show(); //点击时切换图片 mImageView.setImageResource(imagesID[position]); } }); } private void init() { mGallery=(Gallery) findViewById(R.id.gallery); imagesID=new int []{ R.drawable.a,R.drawable.b,R.drawable.c,R.drawable.d, R.drawable.e,R.drawable.f,R.drawable.g,R.drawable.h}; mImageView=(ImageView) findViewById(R.id.imageView); //mImageView初始时显示的图片 mImageView.setImageResource(imagesID[imagesID.length/2]); mBaseAdapter = new BaseAdapter() { @Override public View getView(int position, View convertView, ViewGroup parent) { ImageView imageView = new ImageView(MainActivity.this); //设置图片来源 imageView.setImageResource(imagesID[position]); //拉伸图片以填充View的高宽 imageView.setScaleType(ImageView.ScaleType.FIT_XY); //控制显示图片的大小 imageView.setLayoutParams(new Gallery.LayoutParams(130, 130)); imageView.setBackgroundColor(0xFF000000); return imageView; } @Override public long getItemId(int position) { return position; } @Override public Object getItem(int position) { return position; } @Override public int getCount() { return imagesID.length; } }; }}
转载地址:https://it9527.blog.csdn.net/article/details/8964888 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
做的很好,不错不错
[***.243.131.199]2024年04月20日 15时30分02秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
CLOSE_WAIT状态的原因与解决方法
2019-04-30
如何kill一个 defunct 进程
2019-04-30
du命令 实现Linux 某个文件夹下的文件按大小排序
2019-04-30
typedef struct与struct的区别
2019-04-30
[转]静态链接库LIB和动态链接库DLL的区别 创建和示例
2019-04-30
linux磁盘分区fdisk命令详解
2019-04-30
oracle sql日期比较
2019-04-30
valgrind
2019-04-30
谈谈RTP传输中的负载类型和时间戳
2019-04-30
为什么要使用RTP
2019-04-30
[转]C++中的内存管理(new、delete、内存泄漏)
2019-04-30
[转]什么时候调用构造函数和析构函数
2019-04-30
vs2008静态编译Qt4.8.6
2019-04-30
基于 Jenkins 快速搭建持续集成环境
2019-04-30
C++指向类成员函数的指针详细解析
2019-04-30
在vs2008 C++下调试控制台程序的心得及技巧
2019-04-30
Qt在Windows下的三种编程环境搭建
2019-04-30
C++模板元编程(C++ template metaprogramming)
2019-04-30