2012-11-06 4 views
0

트위터의 데이터 목록보기가 있습니다. 나는 트위트를 보여주고 싶지만 모든 트위트 아이템에 사용자를 보여 주었다. 그래서 나는 다른 사용자들을 위해 기본 그림을 보여주고 싶다. 내 코드는 작동하지만 listview를 움직이면 사용자 프로필 이미지가 모든 사용자에게 다시 표시됩니다. 어떻게 해결할 수 있습니까? 코드 "rt"에서 리트 윗이면?android listview moving changes

protected void onPostExecute(String result) { 
      super.onPostExecute(result); 

      if (null != pDialog && pDialog.isShowing()) { 
       pDialog.dismiss(); 
      } 

      if (null == result || result.length() == 0) { 
       showToast("Bağlantı yok"); 
       Twitter.this.finish(); 
      } else { 

       List<String> galleryImages = new ArrayList<String>(); 
       try {   JSONObject jsonObject = new JSONObject(result); 
       veriArray = jsonObject.getJSONArray("results");  
       int nVeri = veriArray.length();  
       for (int i = 0; i < nVeri; i++) { 
        JSONObject veriObject = veriArray.getJSONObject(i); 


        baslik = veriObject.getString("text");   
        kImaj = veriObject.getString("profile_image_url");  
        kisaAciklama = veriObject.getString("from_user_name"); 

        Item objItem = new Item(); 

        rt=baslik.substring(0, 2); 

        if(rt.equals(kiyas)){ 



         kImaj=""; 
         objItem.setLink(kImaj); 
         objItem.setName(baslik);} 

        else { 
         objItem.setLink(kImaj); 
         objItem.setName(baslik); 
        } 


        arrayOfList.add(objItem); 




        //objItem.setLink(link); 





         } 

       } catch (JSONException e) 
       {   e.printStackTrace();  } } 



       Collections.sort(arrayOfList, new Comparator<Item>() { 

        public int compare(Item lhs, Item rhs) { 
         return (lhs.getAge() - rhs.getAge()); 
        } 
       }); 
       setAdapterToListview(); 

      } 

     } 

내 어댑터

public class KampanyaRowAdapter extends ArrayAdapter<Item> { 

    private Activity activity; 
    private List<Item> items; 
    private Item objBean; 
    private int twitterrow; 
    private ImageLoader imageLoader; 
    public KampanyaRowAdapter(Activity act, int resource, List<Item> arrayList) { 
     super(act, resource, arrayList); 
     this.activity = act; 
     this.twitterrow = resource; 
     this.items = arrayList; 
     imageLoader = new ImageLoader(act); 
    } 

    @Override 
    public View getView(final int position, View convertView, ViewGroup parent) { 
     View view = convertView; 
     ViewHolder holder; 
     if (view == null) { 
      LayoutInflater inflater = (LayoutInflater) activity 
        .getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
      view = inflater.inflate(twitterrow, null); 

      holder = new ViewHolder(); 
      view.setTag(holder); 
     } else { 
      holder = (ViewHolder) view.getTag(); 
     } 

     if ((items == null) || ((position + 1) > items.size())) 
      return view; 

     objBean = items.get(position); 

     holder.tvName = (TextView) view.findViewById(R.id.tvname); 
     holder.tvCity = (TextView) view.findViewById(R.id.tvcity); 


     holder.imgView = (ImageView) view.findViewById(R.id.image); 

     if (holder.tvName != null && null != objBean.getName() 
       && objBean.getName().trim().length() > 0) { 
      holder.tvName.setText(Html.fromHtml(objBean.getName())); 
     } 
     if (holder.tvCity != null && null != objBean.getCity() 
       && objBean.getCity().trim().length() > 0) { 
      holder.tvCity.setText(Html.fromHtml(objBean.getCity())); 
     } 

     if (holder.imgView != null) { 
      if (null != objBean.getLink() 
        && objBean.getLink().trim().length() > 0) { 
       imageLoader.DisplayImage(objBean.getLink(), activity, 
         holder.imgView); 
      } else { 

      } 
     } 

     return view; 
    } 

    public class ViewHolder { 
     public TextView tvName, tvCity, tvBDate, tvGender, tvAge; 
     private ImageView imgView; 
    } 
} 
+1

서버의 listview에서 이미지를 지연로드합니다. http://stackoverflow.com/questions/541966/how-do-i-do-a-lagy-load-of-images-in-listview this에 대한 이동 –

+0

어쨌든 나는 구문 분석 후 listview를 잠글 수 있습니다.? – slhgndz

답변

0
당신이 당신의 어댑터 코드를 공유하는 경우 도움이 될

,이 어댑터는 기존 뷰를 재활용되어있을 수 있습니다. 어댑터의 newViewbindView 메서드를 확인하십시오.

+0

내 목록 항목 중 일부는 json의 이미지를 구문 분석하지만 일부에는 기본 backgroung이 있어야합니다. 활동이 시작될 때 그것은 괜찮습니다. 그러나 제가 listview에서 아래 위로 올 때 모든 imageviews는 json으로부터의 이미지를 보여줍니다. – slhgndz