`
cgs1999
  • 浏览: 536186 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

范例HelloGallery

阅读更多
Android docs中的范例,简单翻译整理如下。
--------------------------------------------
1、创建新项目,名称HelloGallery;

2、准备一些图片文件,放到res/drawable/目录下;

3、修改res/layout/目录下main.xml,内容如下:
<?xml version="1.0" encoding="utf-8"?>
<Gallery xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/gallery"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
/>


4、在res/values/目录下,新建文件attrs.xml,内容如下:
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <declare-styleable name="HelloGallery">
        <attr name="android:galleryItemBackground" />
    </declare-styleable>
</resources>


5、打开HelloGallery.java,修改后的代码如下:
public class HelloGallery extends Activity {

	/** Called when the activity is first created. */
	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);

		Gallery g = (Gallery) findViewById(R.id.gallery);
		g.setAdapter(new ImageAdapter(this));

		g.setOnItemClickListener(new OnItemClickListener() {

			public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
				Toast.makeText(HelloGallery.this, "" + position, Toast.LENGTH_SHORT).show();
			}
		});
	}

	public class ImageAdapter extends BaseAdapter {

		int mGalleryItemBackground;
		private Context mContext;

		// 图片资源的名称需要根据准备的图片名称进行修改
		private Integer[] mImageIds = {
				R.drawable.expo01, R.drawable.expo02, R.drawable.expo03, R.drawable.expo04, R.drawable.expo05,
				R.drawable.expo06, R.drawable.expo07, R.drawable.expo08
		};

		public ImageAdapter(Context c) {
			mContext = c;
			TypedArray a = obtainStyledAttributes(R.styleable.HelloGallery);
			mGalleryItemBackground = a.getResourceId(R.styleable.HelloGallery_android_galleryItemBackground, 0);
			a.recycle();
		}

		public int getCount() {
			return mImageIds.length;
		}

		public Object getItem(int position) {
			return position;
		}

		public long getItemId(int position) {
			return position;
		}

		public View getView(int position, View convertView, ViewGroup parent) {
			ImageView i = new ImageView(mContext);

			i.setImageResource(mImageIds[position]);
			i.setLayoutParams(new Gallery.LayoutParams(150, 100));
			i.setScaleType(ImageView.ScaleType.FIT_XY);
			i.setBackgroundResource(mGalleryItemBackground);

			return i;
		}
	}
}


6、运行项目,即可看到运行效果,如下图所示:
  • 大小: 5.5 KB
分享到:
评论

相关推荐

    SuperMap Objects 程序范例

    SuperMap Objects 范例程序参考 SuperMap Objects 2008 为广大用户提供了在五种开发语言下(VB6,VC++6,VB .NET2005,C# .NET2005,Delphi7)共240个详细的范例工程源代码及可执行程序,每个工程都是针对某一个或...

    最新Excel VBA活用范例大辞典 光盘

    最新Excel VBA活用范例大辞典光盘 作 者:韩小良,周宁 编著 出 版 社:中国铁道出版社 内容简介 本书以大量的示例,详细介绍了利用Excel VBA操作Excel进而操作Windows的方法和技巧,包括操作管理Excel VBA常见...

    范例50范例50范例50范例50范例50范例50范例50范例50

    范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50范例50...

    C语言通用范例开发金典.part1.rar

    范例1-1 一维数组的倒置 2 ∷相关函数:fun函数 1.1.2 一维数组应用 3 范例1-2 一维数组应用 3 1.1.3 一维数组的高级应用 5 范例1-3 一维数组的高级应用 5 1.1.4 显示杨辉三角 7 范例1-4 显示杨辉三角 7 ∷...

    c语言开发范例大全全部代码

    《C语言开发范例大全》是一本深受C语言学习者喜爱的教材,它以其丰富的实例和详尽的解析,为初学者和有经验的程序员提供了深入理解C语言的宝贵资源。这本书涵盖了C语言的基础概念、语法特性、高级编程技巧以及实际...

    军用产品研制技术文件编写范例 范例11 软件开发计划 22P 8.7M.pdf

    根据提供的文件信息,“军用产品研制技术文件编写范例 范例11 软件开发计划 22P 8.7M.pdf”,我们可以分析出这份文档主要讲述的是军用产品软件开发计划的编写范例。接下来,我们将详细探讨军用产品软件开发计划中的...

    《JavaScript+DHTML语法与范例详解词典》源码

    此为《JavaScript+DHTML语法与范例详解词典》一书的源码. 内容简介 《JavaScript+DHTML语法与范例详解词典》词条包含的主要内容有JavaScript的全局函数和基础对象的函数和属性;如何通过JavaScript DOM对象来动态地...

    Word VBA高效排版范例应用 光盘内容

    《Word VBA 高效排版范例应用》将使读者对每天都要面对的Word软件有一个全新的认识,完全发挥它强大的文字处理和排版功能,并为读者提供服务。很多人不知道,其实几乎90%的用户用到了Word软件10%的功能,《Word VBA ...

    Excel会计应用范例精解

    《Excel会计应用范例精解》是一本深入探讨如何利用Excel进行会计工作实践的专业书籍,旨在帮助会计人员提升工作效率和准确性。这本书涵盖了多个关键的会计系统应用,包括固定资产管理系统、财务报表编制系统、工资...

    LabVIEW模板和项目范例.zip

    LabVIEW模板和项目范例zip,LabVIEW 2012模板和项目范例作为用户设计系统的推荐起点,确保系统的质量和可扩展性。所有的模板和项目范例都是开源的,并包含丰富的文档,详细描述代码的原理、以及对用户增加和修改代码...

    android应用开发范例精解

    《Android应用开发范例精解》通过通俗易懂的开发实例及项目案例,详细介绍了Android应用开发的知识体系及实用开发技术。 《Android应用开发范例精解》共14章,分为3篇。第1篇为基础篇,涵盖Android背景及开发环境和...

    Java范例开发大全教学视频及源码(22集)

    资源名称:Java范例开发大全教学视频及源码(22集)资源目录:【】Java范例开发大全教学视频及源码01【】Java范例开发大全教学视频及源码02【】Java范例开发大全教学视频及源码03【】Java范例开发大全教学视频及源码...

    军用产品研制技术文件编写范例 范例9 标准化审查报告 5P 1.76M.pdf

    军用产品研制技术文件编写范例 范例9 标准化审查报告 5P 1.76M.pdf

    Visual c++通用范例开发金典 韦朴 源代码

    读范例金典,走开发捷径,11大类编程应用,31个主要技术方向,112个细分应用点,355个经典范例,应用为纲、范例为目,深入介绍Visual C++的约722个重要程序代码,精要阐释每个范例实现原理、开发过程和编程要点。...

    Google Android SDK开发范例大全(完整版)1-8.pdf

    Google Android SDK开发范例大全(完整版)1-8.pdf Google Android SDK开发范例大全(完整版)1-8.pdf Google Android SDK开发范例大全(完整版)1-8.pdf Google Android SDK开发范例大全(完整版)1-8.pdf Google Android ...

    C#范例开发大全

    C#范例开发大全C#范例开发大全C#范例开发大全C#范例开发大全

    公路工程资料填写与组卷范例.pdf

    公路工程资料填写与组卷范例.pdf

    Android 开发范例代码大全(第2版)(附源码)

    《Android 开发范例代码大全(第2版)》是一本深入浅出的Android开发实践指南,涵盖了Android应用开发的各个重要方面。这本书以其丰富的范例代码和详细的解释,为开发者提供了宝贵的参考资料,无论是初学者还是有...

    EXCEL VBA 范例应用1000.zipEXCEL VBA实用宏编程经典范例实例代码应用技巧

    EXCEL VBA 范例应用1000.zipEXCEL VBA实用宏编程经典范例实例代码应用技巧EXCEL VBA 范例应用1000.zipEXCEL VBA实用宏编程经典范例实例代码应用技巧EXCEL VBA 范例应用1000.zipEXCEL VBA实用宏编程经典范例实例代码...

    Visual C++通用范例开发金典 源码

    读范例金典,走开发捷径,11大类编程应用,31个主要技术方向,112个细分应用点,355个经典范例,应用为纲、范例为目,深入介绍Visual C++的约722个重要程序代码,精要阐释每个范例实现原理、开发过程和编程要点。...

Global site tag (gtag.js) - Google Analytics