如何在ImageSwitcher Timer中添加更多图片?

时间:2012-10-01 07:41:47

标签: android imageview imageswitcher

我想在imageSwitcher课程上加上一个计时器。我能够使用以下代码为2张图片做到这一点,但我无法添加更多图片。任何人都可以告诉我如何向ImageSwitcher计时器添加更多图片?

imageSwitcher.postDelayed(new Runnable() {
            int i = 0;
            public void run() {
                imageSwitcher.setImageResource(
                    i++ % 2 == 0 ?
                        R.drawable.image1 :
                        R.drawable.mage2);
                imageSwitcher.postDelayed(this, 1000);
            }
        }, 1000);

1 个答案:

答案 0 :(得分:1)

你可以存储在数组

private static final int[] imgs = {R.drawable.image1,
                        R.drawable.mage2,
                        R.drawable.image3,
                        R.drawable.mage4};

然后使用索引变量of和integer来使用这个数组,以获得你想要的drawable。对于例如你想显示圆形幻灯片,所以它从0开始,到达结束时它将从头开始

private int index = 0;

imageSwitcher.postDelayed(new Runnable() {
            public void run() {
                imageSwitcher.setImageResource(imgs[index]);
                if(index==(imgs.length-1))
                     index = 0;
                else
                     index++;
                imageSwitcher.postDelayed(this, 1000);
            }
        }, 1000);