2017-11-08 6 views
1

3 일을 보냈고 이미지를 자세히보기에 작동하는 해결책을 찾지 못했습니다. 검색보기를 사용하기 때문에 좀 더 어려운 방법을 사용해야합니다. ListActivity에서 Universal Image Loader를 사용하고 있지만 DetailView에서이를 구현하는 방법을 모릅니다. TextView 텍스트가 DetailView에 올바르게 표시됩니다. 디버깅 중에 'extras'(또는 'intent') 이미지의 URL이 'mMap'값으로 표시되지만 표시 할 수는 없습니다. 'flag'변수가 null입니다. 'flagImg'는 이미지 URL을 유지하지 않습니다. getParacetable, Bitmap으로 tryied하지만 항상 플래그 값에 null이 표시됩니다.이미지 (form JSON)를 검색 reasult의 상세 활동에 표시 할 수 없습니까?

ListActivity : 상세 활동에

public ListAdapter(Context context, List<MovieModel.Descriptions> items) { 
     this.context = context; 
     this.items = items; 
     inflater = (LayoutInflater.from(context)); 
     this.arrayList = new ArrayList<MovieModel.Descriptions>(); 
     this.arrayList.addAll(items); 
    } 
    view.setOnClickListener(new View.OnClickListener() { 
@Override 
public void onClick(View arg0) { 

     Intent intent = new Intent(context, DetailActivity.class); 
     intent.putExtra("flag",(items.get(position).getImage())); 
     intent.putExtra("getInfo",(items.get(position).getInfo())); 
     context.startActivity(intent); 
     } 
     }); 
     return view; 
     } 

public void filter(String charText){ 
     charText = charText.toLowerCase(Locale.getDefault()); 
     items.clear();; 
     if(charText.length() == 0) { 
     items.addAll(arrayList); 
     }else{ 
     for(MovieModel.Descriptions wp : arrayList){ 
     if(wp.getTitle().toLowerCase(Locale.getDefault()).contains(charText)) 
     items.add(wp); 
     } 
     } 
     notifyDataSetChanged(); 
     } 

 int flag; 
     int send; 
     // recovering data 
     Intent i = getIntent(); 
     info = i.getStringExtra("getInfo"); 
     detInfo = (TextView)findViewById(R.id.info); 
     detInfo.setText(info); 

     flag = i.getIntExtra("flag", send); 
     flagImg = (ImageView)findViewById(R.id.detailImg); 
     flagImg.setImageResource(flag); 

// Two of 9 solutions I used: 
// bitmap is null 
//  flagImg = (ImageView)findViewById(R.id.detailImg); 
//  Bitmap bitmap = (Bitmap) i.getParcelableExtra("flag"); 
//  flagImg.setImageBitmap(bitmap); 

// bmp is null: 
//  Bundle extras = getIntent().getExtras(); 
//  Bitmap bmp = (Bitmap) extras.getParcelable("flag"); 
//  detImg.setImageBitmap(bmp); 


      // How add this image to Universal Image Loader ? 
      ImageLoader.getInstance().displayImage(flagImg.setImageResource(flag),flagImg, new ImageLoadingListener() {... 
+0

을 당신이 mentionig하는 당신 당신이 이미지의 URL을 원하지만 이미지를 어디에서 다운로드 했습니까? 인 텐트 이미지 URL을 당신의'DetailActivity'에 넘겨 주면'String'이 아닌'int'로 받아들입니다. 이미지 URL이 없다면 이미지를 다운로드하고 ImageView로 전달해야합니다. – Yupi

+0

더 많은 코드가이 게시물을 보여줍니다 : https://stackoverflow.com/questions/46911971/listview-in-the-first-activity-listview- in-the-second-activity-nested-json-no – Maler

답변

1

나는 당신이 당신의 DetailActivity에 있도록 의도를 통해 정확한 URL을 전달하는 것으로 가정합니다 :

String flag; 
flag = i.getStringExtra("flag"); 
flagImg = (ImageView)findViewById(R.id.detailImg); 
ImageLoader imageLoader = ImageLoader.getInstance(); 
imageLoader.displayImage(flag, flagImg); 
+0

Yupi, 당신은 훌륭합니다! 대단히 감사합니다 !!! 나는 평판 포인트가 충분하지 않아 투표 할 수 없다는 것을 안다. 하지만 같은 문제를 지적하는 사람에게는 매우 도움이 될 것이라고 생각합니다. 답을 완성하려면 : 마지막 줄 전에 광고를 작성해야합니다 : flagImg = (ImageView) findViewById (R.id.detailImg); – Maler

+0

당신은 오신 것을 환영합니다. 도움이된다면 정답으로 표시 할 수 있습니다. – Yupi

+0

나는 당신의 도움이되는 해답을 원하고 싶지만, 15 점의 평판이 필요하고 오직 9 점만 가질 수는 없습니다. 미안합니다. – Maler