2015-05-23 3 views
0

У меня есть несколько фотографий в моем рисуемом Резе папок, имя которых, какКак получить динамически динамическое имя объекта в android?

  • move1.jpg
  • move2.jpg
  • move3.jpg и так далее.

У меня есть таблица в моей базе данных, в которой есть поле для хранения идентификатора фотографии.

У меня есть выбранный список предметов (в моем случае движение), которые я хочу, пользователь видит правильную фотографию на основе идентификатора фотографии.

movements = db.getAllMovements(true); 
... 

public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
    Dialog movement_image_dialog = new Dialog(getActivity()); 
    movement_image_dialog.setContentView(R.layout.image_dialog); 

    ImageView movement_imageView = (ImageView) movement_image_dialog.findViewById(R.id.movement_imageview); 

    **int photoId = finalMovements.get(position).getPhotoId();** 
    **movement_imageView.setImageResource(R.drawable.*move4*);** 
... 
} 

Вопрос: как установить ресурс изображения с помощью photoId, который у меня есть? мне нужно что-то вроде этого R.drawalbe.(move+photoId)

+0

означает Вы хотите установить фото Если пользователь выбрать список значений как 2 затем установить изображения в движении + 2? –

ответ

1

Вы можете использовать ресурс getIdentifier(String name, String defType, String defPackage) как

INT drawableResourceId = this.getResources() getIdentifier ("nameOfDrawable", "рисуем", this.getPackageName()).

Где

это является деятельность.

nameOfDrawable is move1, move2 и т. Д. В вашем случае.

drawableResourceId это один вы можете передать в

movement_imageView.setImageResource(drawableResourceId);

0

Я думаю, вы должны попробовать это ..

int photoId=R.drawable.move1; 

img.setImageResource(photoId); 
+0

он работает на это ... –

1

мы получаем динамически изображения с, как это.

String imageId=yourImageId; 
    Drawable drawable = getResources().getDrawable(getResources() 
         .getIdentifier(imageId, "drawable", getPackageName())); 
Смежные вопросы