自定义设计Listview博客图像
我想创建如上图所示的内容,其中显示最新博客,其他博客则遵循备用布局。
我已经创建了奇偶跟随循环,但它不起作用,当滚动它从第一个位置加载的 ListView 时,
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if (inflater == null)
inflater = (LayoutInflater) activity
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
int layoutResource = 0; // determined by view type
int viewType = getItemViewType(position);
switch (viewType) {
case 0:
layoutResource = R.layout.news_row;
break;
case 0:
layoutResource = R.layout.news_row_even;
break;
case 1:
layoutResource = R.layout.news_row_odd;
}
if (convertView == null)
convertView = inflater.inflate(layoutResource, null);
TextView txtNewsTitle = (TextView) convertView.findViewById(R.id.news_title);
txtNewsTitle.startAnimation(AnimationUtils.loadAnimation(this.activity, R.anim.fade_in));
txtNewsTitle.setTypeface(Utils.getTypeFace(Utils.Fonts.ROBOTO));
TextView txtMessage = (TextView) convertView.findViewById(R.id.message);
txtMessage.setTypeface(Utils.getTypeFace(Utils.Fonts.ROBOTO));
txtMessage.startAnimation(AnimationUtils.loadAnimation(this.activity, R.anim.fade_in));
TextView txtAgo = (TextView) convertView.findViewById(R.id.ago);
txtAgo.setTypeface(Utils.getTypeFace(Utils.Fonts.ROBOTO));
txtAgo.startAnimation(AnimationUtils.loadAnimation(this.activity, R.anim.fade_in));
int MAX_WIDTH = Utils.getScreenWidth() / 2;
int MAX_HEIGHT = MAX_WIDTH;
final PNewsData news = (PNewsData) getItem(position);
int n = 0;
Log.e("position", String.valueOf(position));
txtNewsTitle.setText(news.title);
txtMessage.setText(news.description.substring(0, Math.min(news.description.length(), 120)) + "...");
txtAgo.setText(news.added);
if (news.images.get(0).path != null) {
p.load(Config.APP_IMAGES_URL + news.images.get(0).path)
.transform(new BitmapTransform(MAX_WIDTH, MAX_HEIGHT))
.into(imgNewsPhoto);
}
return convertView;
}
最佳答案
首先纠正 case
不。
case 0:
layoutResource = R.layout.news_row;
break;
case 1:
layoutResource = R.layout.news_row_even;
break;
case 2:
layoutResource = R.layout.news_row_odd;
关于java - 自定义设计listview位置错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47348007/