可以用 "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);
}