0

请帮忙!

在我的应用程序中,我使用Android-UiTableViewthiagolocatelli / android-uitableview)和AQueryandroidquery / androidquery

我的任务是从 json 数组加载数据并从 URL 加载图像。加载没有图片的列表我能够:

jgall = json.getJSONArray("gall");                  
int z = 0;
  for(int i = 0; i < jgall.length(); i++){
      JSONObject c = jgall.getJSONObject(i);
      tableView.addBasicItem(c.getString("name"), c.getString("place"));
  }

我尝试显示自定义视图,但没有任何反应

LayoutInflater mInflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
RelativeLayout view      = (RelativeLayout) mInflater.inflate(R.layout.custom_view,null); 
String iurl              = c.getString("img");
aq.id(R.id.img).image(iurl, false, true);                       
ViewItem viewItem        = new ViewItem(view);
tableView.addViewItem(viewItem);

告诉我它是真实的使用Android-UiTableView吗?如果是这样的话!如何?

4

1 回答 1

2

我通过自己修改库代码来做到这一点。

我在UITableView.java添加了以下构造函数:

public void addBasicItem(Drawable drawable, String title, String summary) {
    mItemList.add(new BasicItem(drawable, title, summary));
}

BasicItem.java中的以下内容:

public Drawable getDDrawable() {
    return dDrawable;
}

public BasicItem(Drawable ddrawable, String _title, String _subtitle) {
    this.dDrawable = ddrawable;
    this.mTitle = _title;
    this.mSubtitle = _subtitle;
}

并再次修改了UITableView.java文件中的setupBasicItem方法:

((ImageView) view.findViewById(R.id.image)).setBackgroundDrawable(item.getDDrawable());

最后,在您的代码中添加以下内容:

URL newurl = new URL("http://www.example.com/example.png"); 
Bitmap bmp = BitmapFactory.decodeStream(newurl.openConnection() .getInputStream());
Drawable drawable = new android.graphics.drawable.BitmapDrawable(getResources(),bmp);

tableView.addBasicItem(drawable, "Title", "SubTitle");

希望它有所帮助,因为它对我有用。

于 2012-10-26T13:17:23.070 回答