在我的Android应用程序中,我有一个类扫描DynamoDB表并在ListView中返回结果。
CatalogActivity.java:
public class ListViewAdapter extends BaseAdapter {
Context mContext;
LayoutInflater inflater;
private List<Product> result = null;
private ArrayList<Product> arraylist;
public ListViewAdapter(Context context, List<Product> result) {
mContext = context;
this.result = result;
inflater = LayoutInflater.from(mContext);
this.arraylist = new ArrayList<Product>();
this.arraylist.addAll(result);
}
public class ViewHolder {
TextView itemName;
TextView itemPrice;
ImageView itemImage;
}
// Other required methods...
@Override
public View getView(final int position, View view, ViewGroup viewGroup) {
final ViewHolder holder;
if (view == null) {
holder = new ViewHolder();
view = inflater.inflate(R.layout.lv_items, null);
holder.itemName = (TextView) view.findViewById(R.id.itemNameList);
holder.itemPrice = (TextView) view.findViewById(R.id.itemPriceList);
holder.itemImage = (ImageView) view.findViewById(R.id.itemImageList);
view.setTag(holder);
} else {
holder = (ViewHolder) view.getTag();
}
holder.itemName.setText(result.get(position).getName());
holder.itemPrice.setText(Integer.toString(result.get(position).getPrice()) + "$");
productId = result.get(position).getProductId();
productSale = result.get(position).getSale();
productSummary = result.get(position).getSummary();
ListViewAdapter.java:
CatalogActivity
如您所见,ListViewAdapter
扫描DynamoDB表并返回结果,方法是将结果发送到ListViewAdapter
。 onPreExecute
获取结果,并以预定义的单元格布局将它们输入到ListView中。
问题是什么?在CatalogActivity
onPostExecute
方法中,我设置了要显示的进度对话框。在<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
方法中,我已经驳回了此对话框。问题是几秒钟后对话框被解除,但ListView单元格仅在大约一半或整分钟后显示。
有没有办法加快扫描速度并更快地应用细胞?