import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.Gallery;
import android.widget.LinearLayout;
import android.widget.LinearLayout.LayoutParams;
import android.widget.Toast;
import android.widget.AdapterView.OnItemClickListener;
public class Activity01 extends Activity
{ LinearLayout linearLayout;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
linearLayout=new LinearLayout(this);
linearLayout.setLayoutParams( new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT));
//获得Gallery对象
Gallery g = new Gallery(this);
g.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
//添加ImageAdapter给Gallery对象
g.setAdapter(new ImageAdapter(this));
//设置Gallery的背景
g.setBackgroundResource(R.drawable.bg0);
//设置Gallery的事件监听
g.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View v, int position, long id)
{
Toast.makeText(Activity01.this,"你选择了"+(position+1)+" 号图片",
Toast.LENGTH_SHORT).show();
}
});
linearLayout.addView(g);
setContentView(linearLayout);
}
}
、、、、、、、、、、、、、、、、、、
import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Gallery;
import android.widget.ImageView;
public class ImageAdapter extends BaseAdapter
{
// 定义Context
private Context mContext;
// 定义整型数组 即图片源
private Integer[] mImageIds =
{
R.drawable.img1,
R.drawable.img2,
R.drawable.img3,
R.drawable.img4,
R.drawable.img5,
R.drawable.img6,
R.drawable.img7,
R.drawable.img8,
};
// 声明 ImageAdapter
public ImageAdapter(Context c)
{
mContext = c;
}
// 获取图片的个数
public int getCount()
{
return mImageIds.length;
}
// 获取图片在库中的位置
public Object getItem(int position)
{
return position;
}
// 获取图片ID
public long getItemId(int position)
{
return position;
}
public View getView(int position, View convertView, ViewGroup parent)
{
ImageView imageview = new ImageView(mContext);
// 给ImageView设置资源
imageview.setImageResource(mImageIds[position]);
// 设置布局 图片120×120显示
imageview.setLayoutParams(new Gallery.LayoutParams(120, 120));
// 设置显示比例类型
imageview.setScaleType(ImageView.ScaleType.FIT_CENTER);
return imageview;
}
}
分享到:
相关推荐
**Android代码-ViewPagerGallery** ViewPager是Android开发中一个非常重要的组件,它允许用户在多个页面之间左右滑动查看内容,通常用于实现轮播图、应用引导页等效果。在这个名为"ViewPagerGallery"的项目中,...
实现横向Gallery的效果,我们首先需要创建一个HorizontalScrollView,并在其中包含一个LinearLayout或其他可滚动的布局。然后,我们需要在该布局中动态添加View,通常这些View是ImageView或自定义的View,用于展示...
通过分析和学习`Gallery`的源代码,开发者可以了解到Android UI组件的实现原理,以及如何处理触摸事件、布局管理和数据绑定。此外,虽然在新版本中不推荐使用Gallery,但其设计理念和实现方式对于理解RecyclerView和...
在给定的压缩包`Android代码-Gallery相册浏览.zip`中,包含了实现这一功能的相关源码,我们可以深入探讨`Gallery`组件的使用方法及其相关知识点。 1. **Gallery组件介绍**: `Gallery`是Android SDK提供的一种水平...
本项目名为"Android代码-Gallery",它提供了一个本地图片选择和预览的解决方案,以弥补Gallery组件的缺失。 该项目的核心功能包括: 1. **图片选择**:用户可以方便地从设备的相册中选择多张图片,这涉及到Android...
在这个"实现Gallery控件布局的简单demo"中,我们将深入探讨如何配置和使用`Gallery`,以及如何结合`BaseAdapter`来动态加载数据。 首先,`Gallery`控件属于Android的`android.widget`包,它是`AbsSpinner`的子类。...
本源码包"Android代码-画廊试图Gallery.rar"包含了实现这一功能的相关代码示例,旨在帮助开发者更好地理解和使用Android Gallery组件。 Gallery组件是Android SDK中的一个视图控件,位于`android.widget.Gallery`类...
本示例代码着重于如何通过自定义RecyclerView实现一个类似于Android原生Gallery的效果,即横向滑动浏览图片。Gallery组件在Android API 21(Lollipop)之后已被弃用,因此开发者需要寻找替代方案,例如使用...
在Android开发中,"Android Gallery的实现"是一个常见的需求,特别是在构建一个图片浏览应用时。Gallery组件是Android SDK提供的一种可以展示多个项目(通常为图片)的控件,用户可以通过左右滑动来浏览这些项目。在...
这个"Gallery1_Gallery.zip"压缩包很可能是包含了一个示例项目,展示了如何在Android应用中实现自定义的Gallery功能。 在Android开发中,Gallery是一个水平滚动的视图,可以用来展示一系列的元素,如图片或者小图标...
总结,新版的Android开发中,虽然Gallery组件不再被推荐使用,但开发者仍然可以通过`HorizontalScrollView`或其他方式实现类似的功能。了解这两种方法的差异和使用场景,对于Android应用的适配和升级是非常重要的。...
在Android开发中,有时我们需要创建一个可滚动的视图,其中包含多个可点击或交互的项目,这通常可以通过使用Gallery控件来实现。然而,Gallery控件存在一些限制,例如在其两端会保留一定的空白区域,这可能不符合...
- 在布局XML文件中,通过`<Gallery>`标签来添加`Gallery`控件,并可以通过`android:id`、`android:layout_width`、`android:layout_height`等属性来设置基本属性。 2. **适配器Adapter的使用** - `Gallery`需要一...
**Android Gallery控件详解** Android Gallery控件是Android SDK中提供的一种用于展示一系列项的水平滚动视图。这个控件可以用来创建一个类似图片轮播的效果,用户可以通过左右滑动来浏览不同的项目。在Android早期...
总结,Gallery画廊控件是Android早期版本中实现水平滚动列表的一个强大工具,尽管已被弃用,但在某些场景下仍具有实用性。了解其工作原理和自定义方式,对于理解和升级旧代码库是有益的。同时,熟悉其替代品,如...
3. Activity代码,实例化了Gallery,设置了Adapter,并可能添加了监听器。 虽然Gallery已被弃用,但通过理解其工作原理和使用`BaseAdapter`,开发者可以学习到如何自定义适配器和处理可滚动视图,这对理解和使用...
在Android开发中,有时我们需要创建一个可以横向滑动的视图,类似相册的效果,这在Android早期版本中是通过Gallery组件实现的。然而,Gallery组件在API 16之后就被弃用了,开发者们转向使用其他的组件来替代,如...
在Android开发中,`Gallery`组件是一个非常有用的控件,它允许用户在水平轴上滑动浏览多个项目,常用于实现图片浏览或者选项选择。在本主题中,我们将深入探讨如何利用`Gallery`来实现图片滑动,并且在选中图片时...
这个小例子展示了如何在Android应用中集成和使用`Gallery`控件,以实现一个可滚动的图片画廊功能。下面我们将深入探讨`Gallery`的相关知识点。 1. **Gallery控件介绍** `Gallery`是Android SDK中的一个...