Как программно изменить ВСЕ растровые изображения в списке слоев?

Вот список слоев с именем index.xml:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
 <item android:id="@+id/ll_23_1015_0" android:top="0dp" android:left="0dp" android:bottom="0dp" android:right="0dp">
        <shape android:shape="rectangle">
            <size android:width="1205dp" android:height="1795dp"/>
            <solid android:color="#FFF"/>
        </shape>
    </item>
    <item android:id="@+id/ll_23_1015_1" android:top="75dp" android:left="50dp" android:bottom="1366dp" android:right="919dp">
  <bitmap android:src="@drawable/pic_23" />
    </item>
        <item android:id="@+id/ll_23_1015_2" android:top="504dp" android:left="50dp" android:bottom="937dp" android:right="919dp">
  <bitmap android:src="@drawable/pic_23" />
    </item>
        <item android:id="@+id/ll_23_1015_3" android:top="933dp" android:left="50dp" android:bottom="508dp" android:right="919dp">
  <bitmap android:src="@drawable/pic_23" />
    </item>
        <item android:id="@+id/ll_23_1015_4" android:top="1362dp" android:left="50dp" android:bottom="79dp" android:right="919dp">
  <bitmap android:src="@drawable/pic_23" />
    </item>
 </layer-list>

и это мой код:

    imgVShare = (ImageView) findViewById(R.id.imgVShare);
    String path = "/storage/sdcard0/temp_photo.jpg";
    Drawable finalPic = Drawable.createFromPath(path);

            LayerDrawable myDrawable= (LayerDrawable)getResources().getDrawable(R.drawable.index);
    for(int i=0; i<5; i++) 
        {
         String ID = "ll_23_1015_" + (i+1);
         int resID = getResources().getIdentifier(ID, "id", getPackageName());
         Drawable layer =  myDrawable.findDrawableByLayerId(resID);
         layer = finalPic;
         myDrawable.setDrawableByLayerId(resID, layer);
        }
        imgVShare.setImageDrawable(myDrawable);

Все, что я хочу сделать, это заменить все растровые изображения в списке слоев на "temp_photo.jpg", который находится во внутренней памяти. Этот метод просто заменяет последнее растровое изображение и очищает остальные....., пожалуйста, помогите....!

0 ответов

Другие вопросы по тегам