마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

ArrayList 형변환문제.

0 추천
try{
   
   for(int i=0; i < datalist.size(); i++){
    
    URL url = new URL(datalist.get(i).getImagepath());
    URLConnection conn = url.openConnection();
    conn.connect();
    
    int nSize = conn.getContentLength();
    BufferedInputStream bis = new BufferedInputStream(conn.getInputStream(),nSize);
    
    datalist.get(i).setImagebitmap(BitmapFactory.decodeStream(bis));
    
    bis.close();
   }

   
   Message msg = mhandler.obtainMessage();
   msg.obj = datalist;
   mhandler.sendMessage(msg);
   
  }catch (Exception e) {
   // TODO: handle exception
   Log.d("ErrorLog", "GetImageFromUrl : BitmapLoadError");
  }

이렇게 이미지경로를 받아와서.. handler로 보내줍니다.

 

 

public ViewPagerAdapter(Context con){
  super();
  mInflater = LayoutInflater.from(con);
  context = con;
  ItemDataLoad data = new ItemDataLoad(handler);
  data.start();
  
  handler = new Handler(){
   @Override
   public void handleMessage(Message msg) {
    // TODO Auto-generated method stub
    super.handleMessage(msg);
    if(true){
     itemarray =  (ArrayList<ItemInfoDto>) msg.obj; 
    }
    Log.d("--", "length = " + msg.obj);
   }
  };
 }

itemarray =  (ArrayList<ItemInfoDto>) msg.obj; 

이부분.. 안되네요 ..ㅠㅠ 다른방법아시는분 계신가요?

 

mamongs (4,050 포인트) 님이 2013년 5월 6일 질문
로그캣이라도 좀 올려주시지..
형변환해서 오류나신다니 itemarray 변수가 형변환하는 거랑 안맞는건가요? 소스가 참 보기..힘드네요...

1개의 답변

0 추천
하단의 handler 와

상단의 mhandler 가 다른 인스턴스 아닌가요..

하단에서 생성한 handler 를 상단의 클래스로 넘기셔야 할것 같습니다만..
루지메이앙 (3,450 포인트) 님이 2013년 5월 6일 답변
아 제가 따로따로 붙혀넣기 하다보니 이렇게 보엿군요..
다른클래스이구요 값전송까지는 됩니다.. 근데 형변환이 안되네요 ㅜ
...