如何在Android中使用数组显示匹配的Imageview?

我得到一些这样的数据: {201,501,301,404,211}

我用','分割

      String[] messages = split(",");

所以我得到201 501 301 404 211,现在我只需要三个值:201 501 301

      messages[0];  //201
      messages[1];  //501
      messages[2];  //301

但是,我有9个图标,只有3个图标将基于message [0]〜messages [2]显示

这是我的xml:

               <ImageView
                    android:id="@+id/ig_p1"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="5dp"
                    android:layout_marginTop="@dimen/precaution_top"
                    android:src="@mipmap/icon_101" />
               <ImageView
                    android:id="@+id/ig_p2"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="@dimen/precaution_top"
                    android:layout_toRightOf="@+id/ig_precaution_1"
                    android:src="@mipmap/icon_403" />
               <ImageView
                    android:id="@+id/ig_p3"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="@dimen/precaution_top"
                    android:layout_toRightOf="@+id/ig_precaution_2"
                    android:src="@mipmap/icon_401" />

根据我的xml,将只显示三个ImageView,我想显示array [0]〜array [2]来匹配imageView。

  ImageView p1,p2,p3;
  p1 = (ImageView)findViewById(R.id.ig_p1);
  p2 = (ImageView)findViewById(R.id.ig_p2);
  p3 = (ImageView)findViewById(R.id.ig_p3);

请帮助我,谢谢。

评论
  • Viola
    Viola 回复

    您可以动态设置图标。

    String fileName = "icon_" + messages[0]
    int iconResId = getResources().getIdentifier(fileName, "mipmap", getPackageName());
    ig_p1ImageView.setImageResource(iconResId);