2013-07-04 2 views
1

Привет Я пытаюсь программно добавить изображение к деятельности для андроид приложениекак программно добавить изображение к деятельности андроида

У меня есть это:

for (int i = 0; i < num_devices; i++) { 

     ImageView imageView = new ImageView(this); 
     LinearLayout.LayoutParams vp = new LinearLayout.LayoutParams 
      (ViewGroup.LayoutParams.WRAP_CONTENT, 
      ViewGroup.LayoutParams.WRAP_CONTENT); 
     imageView.setLayoutParams(vp); 

     try { 
      Class res = R.drawable.class; 
      Field field = res.getField(device_types.get(i)); 
      int resId = field.getInt(null); 
      imageView = (ImageView) findViewById(resId); 
     } 
     catch (Exception e) { 
      Log.e("MyTag", "Failure to get drawable id.", e); 
     } 

     LinearLayout link_devices = (LinearLayout) findViewById(R.id.link_devices); 
     link_devices.addView(imageView); 

однако оно не позвольте мне расположение изображений (я попробовать и получить 0 для getTop, getLeft и т.д ..)

я делаю это неправильно, и был правильный способ сделать это

ответ

0

Вы не настройки Има ge в этом представлении изображения, и вы установили WRAP_CONTENT в качестве параметров макета, что означает, что размер изображенияView такой же, как размер изображения, который вы устанавливаете на нем. Так как изображение не прилагается размером ImageView 0.

Попробуйте установить изображение, используя какую-либо один из кодов; - imageView.setImageBitmap (Растровое шм), setImageDrawable (Drawable вытяжки) или setImageResource (интермедиат Resid).

Я не понимаю, что вы делаете с этим кодом & его не требуется:

Class res = R.drawable.class; 
Field field = res.getField(device_types.get(i)); 
int resId = field.getInt(null); 
imageView = (ImageView) findViewById(resId); 
+0

, что код в основном позволяет мне преобразовать контекст моей строки в кубовые изображений так я по существу используя setImageResource -> не могли бы вы объяснить, какой код сверху вы считаете нужным вырезать? – cxzp

+0

easiest is setImageResource (int ResId). Если у вас есть изображение в папке res/drawable с именем x.png, вы можете установить изображение на "imageView.setImageResource (R.drawable.x);" – vakman

+0

Я изменил код на http://fixee.org/paste/lg2zs9o/, но Syst.out.prinltlns все равно дал мне 0 – cxzp

Смежные вопросы