可以用 "i" 变量做 findViewById 吗?
Is possible to do findViewById with "i" variable?
我有 9 个 ImageView
具有相同的 ID,但只更改了编号(图像 1、图像 2 等...)。
我想在这个系统中初始化:
mImageView = new ImageView[9];
for(int i=0; i<mImageView.length; i++)
mImageView[i] = (ImageView) findViewById(R.id.image+i);
显然这是不可能的。但是有系统可以做到这一点吗?
是的,使用 getResources()
中的 getIdentifier()
方法。
喜欢,
for(int i=0; i<mImageView.length; i++)
{
int resID = getResources().getIdentifier("image"+i,
"id", getPackageName());
mImageView[i] = (ImageView) findViewById(resID);
}
我有 9 个 ImageView
具有相同的 ID,但只更改了编号(图像 1、图像 2 等...)。
我想在这个系统中初始化:
mImageView = new ImageView[9];
for(int i=0; i<mImageView.length; i++)
mImageView[i] = (ImageView) findViewById(R.id.image+i);
显然这是不可能的。但是有系统可以做到这一点吗?
是的,使用 getResources()
中的 getIdentifier()
方法。
喜欢,
for(int i=0; i<mImageView.length; i++)
{
int resID = getResources().getIdentifier("image"+i,
"id", getPackageName());
mImageView[i] = (ImageView) findViewById(resID);
}