其实我想问的东西更喜欢得到一些建议,这是做我想做的事情的最佳方式。我在我的应用程序中使用了Lazy Loading List。我需要能够将一个不同的图像设置为列表视图项目,具体取决于用户是否订阅了该图像。如果他不是,它会显示一个默认图像。如果他是真实的形象。下面是我使用的代码:Android LazyList设置图片问题
import android.app.Activity;
import android.content.Context;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;
public class LazyAdapter extends 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 static class ViewHolder{
public TextView name,info;
public ImageView image;
}
public View getView(int position, View convertView, ViewGroup parent) {
View vi=convertView;
ViewHolder holder;
if(convertView==null){
vi = inflater.inflate(R.layout.item, null);
holder=new ViewHolder();
holder.name=(TextView)vi.findViewById(R.id.name);
holder.info=(TextView)vi.findViewById(R.id.info);
holder.image=(ImageView)vi.findViewById(R.id.image);
vi.setTag(holder);
Log.v("",""+position);
}
else
holder=(ViewHolder)vi.getTag();
holder.name.setText("");
holder.info.setText("");
holder.image.setTag(data[position]);
imageLoader.DisplayImage(data[position], activity, holder.image);
return vi;
}
}
所以我想设置不同的文字名称领域,信息领域,不同的图像取决于如果用户预订与否。我从Sqlite数据库中获得的文本。因此,任何想法或建议是最好的方法来做到这一点?
我真的很感谢任何帮助!谢谢!
办?如果我必须为每一个做到这一点listview上的项目... –
持有者在列表视图中表示单个项目,因此无论如何每个项目都将被处理 – Dyonisos