您好,欢迎访问一九零五行业门户网

【Android】第5章(8)图片库(Galery)

分类:c#、android、vs2015; 创建日期:2016-02-07 一、简介 图库(也叫画廊)是一个布局小部件,用于在可水平滚动的列表中显示每一副图片,当前所选的图片将置于视图的中心。 注意:android已经弃用了这个小部件,弃用的原因是用galery实现的效率比较低,
分类:c#、android、vs2015;
创建日期:2016-02-07
一、简介图库(也叫画廊)是一个布局小部件,用于在可水平滚动的列表中显示每一副图片,当前所选的图片将置于视图的中心。
注意:android已经弃用了这个小部件,弃用的原因是用galery实现的效率比较低,官方的建议是改为用horizontalscrollview来替代这个小部件。但是,目前手机上的图片浏览功能很多都是用galery来实现的,如果你仍然喜欢这个小部件,也可以在高版本的项目中继续使用它。
二、示例8--demo08gallery1、运行截图
在模拟器中用鼠标左右拖放图片观察效果。
2、添加demo08gallery.axml文件
xml version=1.0 encoding=utf-8?>linearlayout xmlns:android=http://schemas.android.com/apk/res/android android:orientation=vertical android:layout_width=fill_parent android:layout_height=fill_parent android:gravity=center_vertical> gallery android:id=@+id/gallery android:layout_width=fill_parent android:layout_height=wrap_content />linearlayout>
保存文件,然后单击解决方案资源管理器上方的【刷新】按钮。
3、添加demo08gallery.cs文件
using system;using android.app;using android.content;using android.os;using android.views;using android.widget;using java.lang;namespace ch05demos.srcactivity{ [activity(label = demo08gallery)] public class demo08gallery : activity { protected override void oncreate(bundle savedinstancestate) { base.oncreate(savedinstancestate); setcontentview(resource.layout.demo08_gallery); var g = findviewbyid(resource.id.gallery); g.adapter = new imageadapter(this) { currentwidth = 550, currentheight = 550 }; g.itemclick += gallery_itemclick; } private void gallery_itemclick(object sender, adapterview.itemclickeventargs e) { toast.maketext(this, e.position.tostring(), toastlength.short).show(); } } public class imageadapter : baseadapter { private context context; private int[] thumbids = { resource.drawable.sample_1, resource.drawable.sample_2, resource.drawable.sample_3, resource.drawable.sample_4, resource.drawable.sample_5, resource.drawable.sample_6, resource.drawable.sample_7 }; //默认值为500(这是c# 6.0新增的功能,仅vs2015可以这样用) public int currentwidth { get; set; } = 500; public int currentheight { get; set; } = 500; public imageadapter(context c) { context = c; } public override int count { get { return thumbids.length; } } public override view getview(int position, view convertview, viewgroup parent) { imageview i = new imageview(context); i.setimageresource(thumbids[position]); i.layoutparameters = new gallery.layoutparams(500, 500); i.setscaletype(imageview.scaletype.fitxy); return i; } public override long getitemid(int position) { return 0; } public override java.lang.object getitem(int position) { return null; } }}
运行。
其它类似信息

推荐信息