`

Gallery之无限循环

 
阅读更多

其实这个很简单的,如果你接触过ViewPager那么这个功能分分钟就实现了.

布局文件就不贴出来了,就是一个简单的Gallery

/**
 * Created by Y on 2015/7/16.
 * Gallery无限循环
 */
public class GalleryActivity extends Activity{

    private Gallery gallery;
    //图片源数组
    private Integer[] imageInteger={
            R.drawable.ic_launcher,
            R.drawable.logo_twitter,
            R.drawable.logo_vkontakte,
            R.drawable.logo_wechat,
            R.drawable.logo_wechatfavorite,
            R.drawable.logo_wechatmoments,
            R.drawable.logo_whatsapp
    };
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.grally);
        initViews();
        gallery.setAdapter(new ImageAdapter(this));
    }

    private void initViews() {
        gallery = (Gallery) findViewById(R.id.gallery);
    }


    class ImageAdapter extends BaseAdapter {
        //声明Context
        private Context context;
        //声明 ImageAdapter
        public ImageAdapter(Context c){
            context = c;
        }
        @Override
        //获取图片的个数
        public int getCount() {
            return Integer.MAX_VALUE;
        }
        @Override
        //获取图片在库中的位置
        public Object getItem(int position) { return position; }

        @Override
        //获取图片在库中的位置
        public long getItemId(int position) {
            return position;
        }

        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            ImageView imageView = new ImageView(context);
            //给ImageView设置资源
            imageView.setImageResource(imageInteger[position%imageInteger.length]);
            imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
            //设置比例类型
            imageView.setScaleType(ImageView.ScaleType.FIT_XY);
            //设置布局 图片128x192显示
            imageView.setLayoutParams(new Gallery.LayoutParams(400, 400));
            return imageView;
        }
    }
}

 

分享到:
评论

相关推荐

    Gallery无限循环.zip

    "Gallery无限循环.zip"这个压缩包文件的名字暗示了它可能包含一个关于Android应用程序开发的项目,特别是与图像展示相关的部分,比如一个图片画廊应用。在这个应用中,"Gallery"通常指的是用户可以浏览并循环查看...

    Android3D画廊Gallery实现无限循环和自动跳转

    本教程将深入讲解如何在Android应用中实现一个3D画廊(Gallery)组件,支持无限循环、自动跳转以及倒影效果。 首先,我们需要理解`Gallery`组件。`Gallery`是Android提供的一个HorizontalScrollView的扩展,用于...

    无限循环滑动gallery

    在Android开发中,"无限循环滑动 gallery"是一种常见的用户界面设计,用于展示一系列图片或内容,例如在应用的启动页、轮播广告或者相册中。Gallery组件曾是Android SDK的一部分,但在后来的版本中被弃用,取而代之...

    无限自动循环的gallery 可以点击

    1. **无限循环**:原生的`Gallery`组件并不支持无限循环,但通过开发者们的智慧,可以通过巧妙地重置数据源和设置适配器来实现这一功能。当用户在最后一张图片向左滑动时,会显示第一张图片;反之,从第一张图片向右...

    gallery无限循环

    在本篇文章中,我们将深入探讨如何实现`Gallery`的无限循环功能,这在很多应用场景,如轮播图或相册展示等,都是非常常见的需求。 首先,`Gallery`控件是Android提供的一个可以水平滚动的选择器,它继承自`...

    Gallery选中高亮和无限循环

    综上所述,结合自定义适配器、监听器以及适当的滚动处理,我们可以实现`Gallery`组件的选中高亮和无限循环滚动效果。不过,需要注意的是,`Gallery`组件在Android API 16之后已被弃用,建议使用`RecyclerView`配合`...

    ViewPager 实现gallery效果+无限循环滚动

    在本教程中,我们将深入探讨如何利用ViewPager实现一个类似画廊(Gallery)的效果,并且让其能够无限循环滚动。 首先,我们要了解ViewPager的基本用法。ViewPager是Android Support Library的一部分,它允许用户在...

    Android Gallery 3张图无限循环 左右滑动都有效

    在这个场景中,提到的"Android Gallery 3张图无限循环 左右滑动都有效"是指一个特定的实现,即在`Gallery`中加载三张图片,并且当用户向左或向右滑动时,图片能够无缝地循环,形成一种无限滚动的效果。下面将详细...

    android Gallery 3d实现无限循环播放 用做广告板最后了

    在这个特定的实现中,`FancyCoverFlow`被用来创建一个无限循环播放的广告板,这样的设计非常适合展示连续的广告或产品信息,用户在滑动到最后一个元素时,可以无缝地反向播放回第一个元素,从而提供流畅的用户体验。...

    仿安卓市场广告条(中心条目放大且无限循环的gallery)

    本项目标题提到的"仿安卓市场广告条(中心条目放大且无限循环的gallery)",是基于3D Gallery控件的一种改进和优化,旨在提供类似市场应用中的滑动广告展示效果,同时具备中心条目放大和无限循环的特性。 Gallery是...

    Gallery实现广告循环

    最后,如果你有一个名为“无限循环广告demo”的项目,那么它可能包含了完整的实现代码和资源文件,你可以参考该项目的代码来更好地理解`Gallery`广告循环的实现方式。 总的来说,通过使用Android的`Gallery`控件,...

    Gallery实现无线循环代码

    然而,原生的`Gallery`组件并不支持无限循环的功能,也就是说,当用户在最后一项滑动时,无法无缝滚动回到第一项,同样在第一项滑动时也无法直接跳转到最后一项。针对这一需求,开发者通常需要自定义`Adapter`来实现...

    可左右循环滑动的gallery图片轮播demo

    在图片轮播设计中,"左右循环"意味着当用户在最后一张图片时点击右箭头,或在第一张图片时点击左箭头,图片轮播会无缝地返回到另一端,创造出一种无限循环的效果。这种设计通常通过数组索引的处理和条件判断来实现,...

    UI开发之Android gallery实现图片的循环旋转

    这表示`Gallery`将有无数个可滚动的项目,从而在视觉上实现无限循环: ```java @Override public int getCount() { return Integer.MAX_VALUE; } ``` 接下来,我们需要重写`getView`方法来处理每个项目的创建。在...

    UI开发第七篇之Android gallery实现图片的循环旋转

    重写getCount方法,返回一个较大的值,使得资源可以无限循环 @Override public int getCount() { return Integer.MAX_VALUE; } // 2. 重写getItem方法,通常用来获取对应位置的数据,但在这里我们并不需要 @...

    Viewpager和Gallery的循环滚动

    本篇文章将深入探讨如何实现`ViewPager`和`Gallery`的循环滚动功能,这对于创建无限轮播广告、图片浏览等应用场景至关重要。 首先,我们来看`ViewPager`。`ViewPager`是Android Support Library中的一个组件,主要...

    Android改进版CoverFlow效果控件无限循环

    这个“Android改进版CoverFlow效果控件无限循环”是原生CoverFlow控件的一个增强版本,特别增加了无限循环的功能,使得用户在滚动到列表的首尾时可以无缝过渡,提供更流畅的用户体验。 CoverFlow控件的核心在于它的...

    3DGallery无限自动循环+倒影效果

    其无限循环和倒影特性为用户提供了流畅且引人入胜的交互体验。 7. **优化与扩展**: 开发者可以根据需求进一步优化这个应用,比如增加手势操作控制播放、添加预加载机制以提高用户体验,或者结合网络API实现在线...

    Gallery图库的源代码

    6. **自定义滚动行为**:源代码可能包含了如何自定义Gallery的滚动行为,比如限制滚动范围、设置无限循环滚动等。 7. **布局管理**:Gallery中的每个项布局可以是任意复杂的,可能包含文字、图片、按钮等多种元素。...

Global site tag (gtag.js) - Google Analytics