Android kotlin integer-array 存放图片资源ID

在Android开发中,我们可以使用Kotlin的数组来存储图片资源ID。以下是一个简单的例子,演示如何创建一个整型数组来存储图片资源ID,并在后续使用这些资源ID。

首先,在你的res/values/strings.xml文件中定义你的图片资源ID数组:

XML 复制代码
<resources>
    <integer-array name="image_resources">
        <item>@drawable/image1</item>
        <item>@drawable/image2</item>
        <item>@drawable/image3</item>
        <!-- 更多图片资源 -->
    </integer-array>
</resources>

然后,在Kotlin代码中,你可以使用以下方式访问和使用这些资源ID:

Kotlin 复制代码
val imageIds = resources.obtainTypedArray(R.array.image_resources)
val imageCount = imageIds.length()
val imageResIds = IntArray(imageCount)
 
for (i in 0 until imageCount) {
    imageResIds[i] = imageIds.getResourceId(i, 0)
}
 
imageIds.recycle() // 清理资源
 
// 使用imageResIds中的资源ID来设置ImageView
val imageView = findViewById<ImageView>(R.id.my_image_view)
imageView.setImageResource(imageResIds[0]) // 例如设置第一张图片

这段代码首先获取了一个TypedArray对象,该对象包含了所有在XML中定义的资源ID。然后,我们遍历这个数组,将每个资源ID添加到一个整型数组中,最后释放掉TypedArray资源。随后,你可以使用这个数组中的资源ID来加载图片,例如设置到ImageView中。

相关推荐
CC__xy18 分钟前
04 类型别名type + 检测数据类型(typeof+instanceof) + 空安全+剩余和展开(运算符 ...)简单类型和复杂类型 + 模块化
开发语言·javascript·harmonyos·鸿蒙
萤丰信息28 分钟前
技术赋能安全:智慧工地构建城市建设新防线
java·大数据·开发语言·人工智能·智慧城市·智慧工地
Pocker_Spades_A1 小时前
飞算JavaAI家庭记账系统:从收支记录到财务分析的全流程管理方案
java·开发语言
CHEN5_022 小时前
【Java基础常见辨析】重载与重写,深拷贝与浅拷贝,抽象类与普通类
java·开发语言
檀越剑指大厂2 小时前
容器化 Android 开发效率:cpolar 内网穿透服务优化远程协作流程
android
Despacito0o2 小时前
C语言基础:变量与进制详解
java·c语言·开发语言
nightunderblackcat3 小时前
进阶向:人物关系三元组,解锁人物关系网络的钥匙
开发语言·python·开源·php
MiyamuraMiyako3 小时前
从 0 到发布:Gradle 插件双平台(MavenCentral + Plugin Portal)发布记录与避坑
android
NRatel4 小时前
Unity 游戏提升 Android TargetVersion 相关记录
android·游戏·unity·提升版本
科大饭桶4 小时前
C++入门自学Day11-- String, Vector, List 复习
c语言·开发语言·数据结构·c++·容器