на 4 кнопки при нажатии я хочу изменить класс и загрузить новое изображение - PullRequest
0 голосов
/ 30 марта 2012

У меня есть 4 кнопки, которые при нажатии запускают новый класс активности. Это прекрасно работает с использованием переключателя. Но я хочу, чтобы рисование отображалось в представлении изображения в зависимости от того, какая кнопка была нажата. Я не уверен, как это сделать. Может кто-нибудь дать мне и идею, как исследовать это для некоторого примера кода.

case R.id.button1:
    intent = new Intent(Gallery.this, Photos.class);
    intent.putExtra("iv", R.drawable.photo1);
    break;
case R.id.button2:
    intent = new Intent(Gallery.this, Photos.class);
    intent.putExtra("iv", R.drawable.photo2);
    break;

Это работает, если перейти к действию "Фотографии", но чертеж не отображается в представлении Imagae. У меня есть этот код в Деятельности Фотографии.

 iv = (ImageView)findViewById(R.id.photo);
        Bundle extras = getIntent().getExtras();
        extras.getInt("iv");

Я не получаю никаких ошибок. У меня просто нет фотографии.

Спасибо за любую помощь, которую вы можете оказать.

1 Ответ

0 голосов
/ 30 марта 2012

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

int imgId = extras.getInt("iv", 0);
if (imgId > 0) {
  iv.setImageResource(imgId);
}

Вы прошли большую часть пути туда.В Android есть отличный набор учебных пособий , позволяющих освоить все основные компоненты представления.

...