在加载异步图像之前,我已经完成了大量的ListView。但这个是滞后的
我在日志中得到了这个,然后它给出了一个小的延迟
09-19 21:13:32.980: I/endeffect(23824): AbsListView.onMeasure(), getWidth()=1080, getHeight()=561, this=android.widget.ListView{43c94550 VFED.VC. ......ID 0,120-1080,681 #7f0501c1 app:id/sliding_drawer_lv}
以下是代码:
public View getView(int position, View convertView, ViewGroup parent) {
final ViewHolder mViewHolder;
long ts = System.currentTimeMillis();
if(convertView==null){
convertView = inflater.inflate(R.layout.list_item_routes_search, null);
mViewHolder = new ViewHolder();
mViewHolder.pictureNIV = (NetworkImageView)convertView.findViewById(R.id.my_fav_route_image_iv);
mViewHolder.pictureNIV.setVisibility(View.GONE);
mViewHolder.titleTv=(TextView)convertView.findViewById(R.id.my_fav_route_item_title_tv);
mViewHolder.eventTv=(TextView)convertView.findViewById(R.id.my_fav_route_item_event_tv);
mViewHolder.createdTv=(TextView)convertView.findViewById(R.id.my_fav_route_item_created_tv);
mViewHolder.createdTv=(TextView)convertView.findViewById(R.id.my_fav_route_item_created_tv);
App.setFont('m', mViewHolder.titleTv,mViewHolder.eventTv);
App.setFont('l', mViewHolder.createdTv);
mViewHolder.extraViewLL= (LinearLayout) convertView.findViewById(R.id.my_fav_route_item_extra_ll);
mViewHolder.contentViewLL = (LinearLayout) convertView.findViewById(R.id.my_fav_route_item_content_ll);
mViewHolder.closeBtn = (Button) convertView.findViewById(R.id.my_fav_route_item_close_btn);
mViewHolder.favoriteTb = (ToggleButton)convertView.findViewById(R.id.my_fav_route_item_extra_fav_tb);
mViewHolder.shareBtn = (Button)convertView.findViewById(R.id.my_fav_route_item_extra_share_btn);
mViewHolder.rlp = new RelativeLayout.LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT);
convertView.setTag(mViewHolder);
}
else{
mViewHolder = (ViewHolder) convertView.getTag();
}
然后我用Volleys NetworkImageView设置图像,但我也尝试了延迟的Aq:
mViewHolder.pictureNIV.setImageUrl(getItem(position).images.getImageNormal(),App.mVolleyImageLoader);
答案 0 :(得分:0)
ListView的高度设置为wrap_parent。这显然使自己的观点付出了代价。