本文实例讲述了AndroID编程仿Iphone拖动相片特效gallery的简单应用。分享给大家供大家参考,具体如下:
Step 1:准备图片素材.
将icon2,icon3,icon4,icon5,icon6五张图片导入res/drawable里加上icon.png本身一共有6张图片.
Step 2:新建AndroID工程,命名为galleryDemo.
Step 3:设计UI,修改main.xml代码如下:
<?xml version="1.0" enCoding="utf-8"?><linearLayout xmlns:androID="http://schemas.androID.com/apk/res/androID" androID:background="@drawable/white" androID:orIEntation="vertical" androID:layout_wIDth="fill_parent" androID:layout_height="fill_parent" > <TextVIEw androID:ID="@+ID/myTextVIEw01" androID:layout_wIDth="fill_parent" androID:layout_height="wrap_content" androID:text="@string/hello" androID:gravity="center_vertical|center_horizontal" /> <gallery androID:ID="@+ID/mygallery1" androID:layout_wIDth="fill_parent" androID:layout_height="wrap_content" androID:gravity="bottom" /></linearLayout>
Step 4:设计主程序类galleryDemo.Java代码如下:
package com.androID.test;import com.androID.test.R.drawable;import androID.app.Activity;import androID.content.Context;import androID.os.Bundle;import androID.vIEw.VIEw;import androID.vIEw.VIEwGroup;import androID.Widget.BaseAdapter;import androID.Widget.gallery;import androID.Widget.ImageVIEw;public class galleryDemo extends Activity { /** Called when the activity is first created. */ @OverrIDe public voID onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentVIEw(R.layout.main); ((gallery) findVIEwByID(R.ID.mygallery1)).setAdapter(new ImageAdapter( this)); } public class ImageAdapter extends BaseAdapter { /* 类成员 myContext为Context父类 */ private Context myContext; /* 使用res/drawable图片作为图片来源 */ private int[] myImageIDs = { drawable.icon,drawable.icon2,drawable.icon3,drawable.icon4,drawable.icon5,drawable.icon6}; /* 构造器只有一个参数,即要存储的Context */ public ImageAdapter(Context c) { this.myContext = c; } /* 返回所有已定义的图片总数量 */ public int getCount() { return this.myImageIDs.length; } /* 利用getItem方法,取得目前容器中图像的数组ID */ public Object getItem(int position) { return position; } public long getItemID(int position) { return position; } /* 取得目前欲显示的图像VIEw,传入数组ID值使之读取与成像 */ public VIEw getVIEw(int position,VIEw convertVIEw,VIEwGroup parent) { /* 创建一个ImageVIEw对象 */ ImageVIEw i = new ImageVIEw(this.myContext); i.setimageResource(this.myImageIDs[position]); i.setScaleType(ImageVIEw.ScaleType.FIT_XY); /* 设置这个ImageVIEw对象的宽高,单位为dip */ i.setLayoutParams(new gallery.LayoutParams(120,120)); return i; } /* 依据距离中央的位移量 利用getScale返回vIEws的大小(0.0f to 1.0f) */ public float getScale(boolean focused,int offset) { /* Formula: 1 / (2 ^ offset) */ return Math.max(0,1.0f / (float) Math.pow(2,Math.abs(offset))); } }}
Step 5:run it,效果如下图:
注明:该代码基本参照AndroID SDK开发范例代码大全
更多关于AndroID相关内容感兴趣的读者可查看本站专题:《Android图形与图像处理技巧总结》、《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总》、《Android多媒体 *** 作技巧汇总(音频,视频,录音等)》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结》
希望本文所述对大家AndroID程序设计有所帮助。
总结以上是内存溢出为你收集整理的Android编程仿Iphone拖动相片特效Gallery的简单应用示例全部内容,希望文章能够帮你解决Android编程仿Iphone拖动相片特效Gallery的简单应用示例所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)