2014-10-29 2 views
0

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

Activity A: 

     Intent intent=new Intent(activity,B.class); 
     intent.putExtra("thumb_url", Image); // this is Bitmap 
     activity.startActivity(intent); 

    Activity C: 

     Intent intent = new Intent(activity,B.class); 
     intent.putExtra("thumb_urls", images)); //this is String 
     activity.startActivity(intent); 

Activity B: 

     bundle = getIntent().getExtras(); 
     if(bundle.containsKey("thumb_url") && bundle.containsKey("thumb_urls") 
     { 
      Bitmap bitmap=bundle.getParcelable("thumb_url"); 
      String profile=bundle.getString("thumb_urls"); 
      } 
    I don't know how to assign this in same imageview. 

       // bigger_image.setImageBitmap(bitmap); // how to assign in same imageview for bitmap and string. 
       // imageLoader.DisplayImage(profile, bigger_image); // 

ответ

0

if должен выполнить эту работу.

Bitmap bitmap=bundle.getParcelable("thumb_url"); 
String profile=bundle.getString("thumb_urls"); 
if(bitmap==null && profile!=null) 
    imageLoader.DisplayImage(profile, bigger_image); 
else if(bitmap!=null && profile==null) 
    bigger_image.setImageBitmap(bitmap); 

Кроме того, если вы собираетесь получить различное содержание, которое Вы не должны ограничивать if(bundle.containsKey("thumb_url") && bundle.containsKey("thumb_urls"). Вы должны использовать || вместо &&.

Так что лучшее, что вы можете сделать, это:

if(bundle.containsKey("thumb_url"){ 
    Bitmap bitmap=bundle.getParcelable("thumb_url"); 
    bigger_image.setImageBitmap(bitmap); 
} else if (bundle.containsKey("thumb_urls")){ 
    String profile=bundle.getString("thumb_urls"); 
    imageLoader.displayImage(profile, bigger_image); //displayImage instead. DisplayImage doesn't exist. 
} 
0

вы should't передать Bitmap в деятельности, вместо этого, с помощью Uri

+0

Вы ошибаетесь. http://stackoverflow.com/questions/2459524/how-can-i-pass-a-bitmap-object-from-one-activity-to-another –

+1

что угодно, передача всего растрового изображения требует большой памяти @Pedro Oliveira – zhaokun

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