Android, помощь в просмотре изображений. Недостаточно ли предыдущей картинки, если я ее заменю? - PullRequest
0 голосов
/ 04 марта 2012
public class TestingActivity extends Activity  {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(getStringIdentifier(getBaseContext(),"main","layout"));
    final ImageView iv=(ImageView) findViewById(R.id.imageView1);
    final Resources res=getResources();
    iv.setImageDrawable(res.getDrawable(R.drawable.horse));
    Button b1=(Button) findViewById(R.id.button1);
    b1.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {
            // TODO Auto-generated method stub
            iv.setImageDrawable(res.getDrawable(R.drawable.labrador));
        }
    });
}
public static int getStringIdentifier(Context context, String name,String resource) {
    return context.getResources().getIdentifier(name, resource, context.getPackageName());
}

}

я пытаюсь что-то выяснить.После того, как я нажимаю кнопку, лошадь заменяется лабрадором, мой вопрос, изображение лошади все еще находится в памяти?и если я положу его туда снова, будут ли два экземпляра одной и той же картинки?

1 Ответ

1 голос
/ 04 марта 2012

вы можете попытаться получить содержимое ImageView перед установкой нового растрового изображения:

BitmapDrawable content = (BitmapDrawable)iv.getDrawable();
if (content != null) {
     Bitmap contentBitmap = content.getBitmap();
     if (contentBitmap != null) {
           contentBitmap.recycle();
           contentBitmap = null;
     }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...