【问题标题】:android - images in Drawable folder and getting their id's into javaandroid - Drawable 文件夹中的图像并将它们的 id 放入 java
【发布时间】:2013-04-30 03:36:59
【问题描述】:

我是开发新手,我陷入了不知道什么是最好的解决方案的地步。

我在可绘制文件夹中保存了 26 张图像的列表。让我们说a到z。当用户点击右侧布局时,他们应该向前导航,如果用户点击左侧布局,他们应该向后导航。

我的问题是这些是图像,android 检索到的 ID 是随机的 int 值。我不能用它来比较接下来应该显示哪个字母。

我该如何解决这个问题?

  1. 如果我将图像命名为 a.png、b.png、c.png... 以后如何从 ID 中检索名称?
  2. 我能否使用集合框架将可绘制对象存储为键值对?

【问题讨论】:

  • -首先定义drawables数组..然后创建2个方法1用于检索数组中的下一个可绘制位置,1用于检索数组中的前一个可绘制位置..然后您可以根据要求进行操作。跨度>

标签: android drawable


【解决方案1】:

您可以通过

获取资源的名称
String resourceName = getResources().getResourceName(resId);

【讨论】:

    【解决方案2】:

    您可以将所有图像 ID 存储在一个数组中。 例如,

    int images[]=new int[]{R.id.a,R.id.b,...,R.id.z};
    

    然后您需要在每次导航时保持当前图像在数组中的位置。 例如将位置更改为

    pos=(pos+1)%26;

    下一张图片和

    pos=(pos-1)%26;

    上一张图片 然后使用 setImageResource(images[pos]); 如果是 ImageView 或 ImageButton,或者使用 getResources()

    【讨论】:

      【解决方案3】:

      您可以像这样检索可绘制文件夹中的图像ID...

       int imagekey=getResources().getIdentifier(url.toLowerCase(),"drawable",getPackageName());
      

      其中 url 是可绘制文件夹中图像的名称

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2023-03-29
        • 2012-10-26
        • 2020-04-15
        • 1970-01-01
        • 1970-01-01
        • 2015-05-16
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多