如何使用像lazylist概念这样的db响应来显示图像?

时间:2011-09-13 09:33:57

标签: android lazy-loading imagesource

我是android应用程序的新开发人员。我正在显示来自.net db services.i的图像。我正在通过使用SoapObject类与.net Web服务进行通信。当我发送请求获取图像到db然后它正在返回已编码的字符串。我将这些字符串存储在一个字符串数组中。在延迟加载概念中,他们将url存储到一个字符串数组中,它们将该数组传递给LazyAdapter类。而不是url字符串数组我传递的响应字符串数组如下所示< / p>

请求:

 String photoXml="<spGetUserPhoto><UserID>148</UserID></spGetUserPhoto>";

响应:

  String response=new ParseXMLString().getUserPhotos(newGeneric().photInfo(photoXml));
  String[] photos=new String[response.size()];
  for(int i=0;i<response.size();i++)
  {
      photos[i]=photoResponse;

   }  

        list=(ListView)findViewById(R.id.list);
        adapter=new LazyAdapter(this, photos);
        list.setAdapter(adapter);

LazyAdapter.java 我在这个类中编写了getView方法,如下所示

  public View getView(int position, View convertView, ViewGroup parent) {
    View vi=convertView;


    if(convertView==null)
        vi = inflater.inflate(R.layout.item1, null);

     TextView text=(TextView)vi.findViewById(R.id.txtViewTitle);;
     ImageView image=(ImageView)vi.findViewById(R.id.imgViewLogo);

     text.setText(messages[position]);
     try {
        imageLoader.DisplayImage(data[position], activity, image);

    } catch (Exception e) {

        e.printStackTrace();
    }

    return vi;

}

从上面的代码我在响应完成后查看图像。在查看图像之前我得到的是空白屏幕,但不是默认图像。

如何显示默认图像直到完成响应?

plzzz任何身体帮助我

1 个答案:

答案 0 :(得分:1)

  1. 您需要使用image.setTag(data [position])
  2. 在item1.xml的xml中,您需要提供