2011-09-30 5 views
0

이 대답을 확인하십시오. Lazy load of images in ListView갤러리에 이미지 게으른 이미지로드

Fedor는 이미지보기로 지연로드하는 방법에 대한 자습서를 제공했습니다. 하지만 그는 사소한 수정으로 갤러리와 함께 사용할 수 있다고 말했다.

사소한 수정으로 어떻게해야합니까?

Ive 지금까지 시도했습니다.

이것은 다음 내 활동에 내가 이렇게 공용 클래스 LazyAdapter가 BaseAdapter {

private Activity activity; 
private String[] data; 
private static LayoutInflater inflater=null; 
public ImageLoader imageLoader; 

public LazyAdapter(Activity a, String[] d) { 
    activity = a; 
    data=d; 
    inflater = (LayoutInflater)activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
    imageLoader=new ImageLoader(activity.getApplicationContext()); 
} 

public int getCount() { 
    return data.length; 
} 

public Object getItem(int position) { 
    return position; 
} 

public long getItemId(int position) { 
    return position; 
} 

public View getView(int position, View convertView, ViewGroup parent) { 
    View vi=convertView; 
    if(convertView==null) 
     vi = inflater.inflate(R.layout.item, null); 

    TextView text=(TextView)vi.findViewById(R.id.text);; 
    ImageView image=new ImageView(this.activity); 
    text.setText("item "+position); 
    imageLoader.DisplayImage(data[position], activity, image); 
    return vi; 
} 

}

을 확장 BaseAdapter입니다 ..

LazyAdapter adapter=new LazyAdapter(MainMenu.this, myRemoteImages); 
((Gallery) findViewById(R.id.gallery)) 
         .setAdapter(adapter); 

그것은 작동하는 것 같지 않습니다 그래도.

아무것도 여기

+0

내 편집을 확인하십시오. 디버그 오류가 발생하지 않습니다. – yoshi24

+0

[이 라이브러리가 도움이 될 수 있습니다.] (http://androidcustomviews.com/portfolio/android-universal-image-loader/) –

답변

0

을 게재하지 않습니다 것은 내가 운동 관리 무언가이다. GridView에서 Fedor의 코드를 구현 한 후에는 ImageLoader 클래스 파일에 decodeFile()이라는 클래스가 있다는 것을 알아야합니다. 그 클래스에서 Fedor의 코드는 이미지를 작은 크기의 축소판이 될 수 있도록 자동으로 크기 조정합니다. "재배치"부분을 주석 처리하면 이미지가 GalleryView에 전체로 표시됩니다.

관련 문제