我开始与他们合作ImageView
,我想知道如何在他们之间动态交换资金。假设我有两个ImageView
:
1)ImageView puesto_1_foto_1 = (ImageView) findViewById(R.id.puesto_1_foto_1);
二)ImageView mi_puesto_foto_1 = (ImageView) findViewById(R.id.mipuesto_foto_1);
我想做的是,一旦它们通过 预加载java
,访问这些ImageView
定义为的图像本身,background
以便将其中一个放在另一个上,然后将另一个放在这个上。
如何
ImageView
动态获取背景/底部图像。您要做的是通过在标签中定义名称来访问上传图像的 id:
通过获取参考
ImageView
您可以通过其标签获取其 id:
这个 id 是您用来在另一个中加载图像的 ID
ImageView
:例子:
根据以下布局,我们添加 2 个 ImageView 来交换它们的图像,为此,我们在标签中添加图像的名称(“android”和“robotito”):
要交换图像,我们需要获取每个 ImageView 中加载的资源的 id,首先我们获取资源的名称,然后获取它的 id,为此我们使用getIdentifier()方法:
在获取 id 时,我们从 id 中获取 Drawable:
现在我们可以交换图像:
得到以下结果:
有了系统中资源的 id,我们可以动态加载另一个图像,
你得编写一个触发改变的事件,它常用在clicklistener上,也就是每次点击imageView,都可以改变如下:
你对imageview 2做了类似的事情: