You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在MainActivity.kt中用循环生成递增参数的图片URL替代XML数组

实现方案

1. 清理冗余资源(可选)

如果不再需要原来XML里的<string-array>配置,直接删除对应的资源节点即可,避免不必要的资源占用。

2. 在MainActivity.kt中动态生成URL列表

在onCreate或其他合适的生命周期方法里,用for循环生成20个带随机标识的Picsum图片URL。Picsum支持通过种子参数控制图片唯一性,这里提供两种常用生成方式:

import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import kotlin.random.Random

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        val imageUrls = mutableListOf<String>()
        // 自定义图片宽高,按需调整
        val imgWidth = 300
        val imgHeight = 300

        // 循环生成20个URL
        repeat(20) { index ->
            // 方式1:用索引做种子,每次启动生成的图片固定(适合需要稳定展示的场景)
            val fixedUrl = "https://picsum.photos/seed/img$index/$imgWidth/$imgHeight"
            // 方式2:用随机数做种子,每次启动生成的图片都不同(完全随机场景)
            // val randomUrl = "https://picsum.photos/seed/${Random.nextInt()}/$imgWidth/$imgHeight"
            
            imageUrls.add(fixedUrl) // 根据需求替换成randomUrl
        }

        // 后续可将imageUrls用于图片加载逻辑,比如传入Glide/Picasso批量加载
        imageUrls.forEach { url ->
            println("生成的图片URL: $url")
        }
    }
}

补充说明

  • 两种生成方式可根据业务场景选择:固定种子模式保证每次启动展示的图片一致,随机种子模式每次启动都会刷新图片。
  • 图片的宽高参数可以直接修改为你需要的数值,比如适配不同屏幕尺寸。

内容的提问来源于stack exchange,提问作者Bernardo Almeida

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 21:10:28