android 设置图片随机出现-两种方式

android 设置图片随机出现-两种方式,

第一种方式:得到图片对应的Drawable实例,通过setImageDrawable(drawable)实现

//ImageView对应的id
        ivBg = findViewById(R.id.iv_bg);

        //把图片资源文件变成数组,注意R文件中数据对应的都是int类型
        int[] mArray = {
                R.drawable.guide_chujian,
                R.drawable.bg_welcome,
                R.drawable.bg_welcome1,
                R.drawable.bg_welcome2,
                R.drawable.bg_welcome3};

        //生成随机数,设置为4,是0,1,2,3,4 五个数
        Random random = new Random();
        int index = random.nextInt(4);


        //随机图片对应R文件的int值:mArray[index],实例Drawable类
        Drawable drawable =getContext().getResources().getDrawable(mArray[index]);
        
        //设置图片
        ivBg.setImageDrawable(drawable);

第二种方式:直接通过setImageDrawable()

//ImageView对应的id
        ivBg = findViewById(R.id.iv_bg);

        //把图片资源文件变成数组,注意R文件中数据对应的都是int类型
        int[] mArray = {
                R.drawable.guide_chujian,
                R.drawable.bg_welcome,
                R.drawable.bg_welcome1,
                R.drawable.bg_welcome2,
                R.drawable.bg_welcome3};

        //生成随机数,设置为4,是0,1,2,3,4 五个数
        Random random = new Random();
        int index = random.nextInt(4);


        //随机图片对应R文件的int值:mArray[index]
       
        
        //设置图片
        ivBg.setImageResource(mArray[index]);

总结:这两种方式只是路径上有些不同

1. Drawable drawable =getContext().getResources().getDrawable(mArray[index]);  ivBg.setImageDrawable(drawable);

2.ivBg.setImageResource(mArray[index]);

当然还有更多,更有趣,更多多样随机设置图片方式,具体需求,各有想法

欢迎加入我的Java与Android逆向开发交流QQ群,交流学习。