Android视图使用for循环进行充气
我想在单击删除图标时删除视图,但它仅在我单击删除图标时删除最后一个视图。Android视图使用for循环进行充气,android,view,layout-inflater,Android,View,Layout Inflater,我想在单击删除图标时删除视图,但它仅在我单击删除图标时删除最后一个视图。 for (int i = 0; i < response.body().getData().getQualifications().size(); i++) { View item = qualificationInflater.inflate(R.layout.student_education_view, null); qualificationParentPanel.addVi
for (int i = 0; i < response.body().getData().getQualifications().size(); i++) {
View item = qualificationInflater.inflate(R.layout.student_education_view, null);
qualificationParentPanel.addView(item);
TextView college = (TextView) item.findViewById(R.id.college);
TextView degree = (TextView) item.findViewById(R.id.degree);
TextView percentage = (TextView) item.findViewById(R.id.percentage);
TextView start_date = (TextView) item.findViewById(R.id.start_date);
TextView end_date = (TextView) item.findViewById(R.id.end_date);
ImageView educationDeleteIcon = (ImageView) item.findViewById(R.id.educationDeleteIcon);
college.setText(response.body().getData().getQualifications().get(i).getCollege());
degree.setText(response.body().getData().getQualifications().get(i).getDegree());
percentage.setText(response.body().getData().getQualifications().get(i).getPercentage());
start_date.setText(response.body().getData().getQualifications().get(i).getSessionFrom());
end_date.setText(response.body().getData().getQualifications().get(i).getSessionTo());
final int finalI = i;
educationDeleteIcon.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.d("deleteIconPos","------>" +response.body().getData().getQualifications().get(finalI).getId());
qualificationParentPanel.removeViewAt(finalI);
}
});
for(int i=0;i”+response.body().getData().getQualifications().get(finalI.getId());
资格ParentPanel.removeViewAt(最终);
}
});
使用每个图像视图
附加i
后来
qualificationParentPanel.removeViewAt((int)v.getTag());
考虑最后确定新膨胀的视图
final View item = ...
然后在OnClickListener
中使用
qualificationParentPanel.removeView(item);
此外,您应该仅对educationDeleteIcon
ImageView educationDeleteIcon = (ImageView) item.findViewById(R.id.educationDeleteIcon);
而不是
educationDeleteIcon = (ImageView) item.findViewById(R.id.educationDeleteIcon);
toast the value of
i
并参见OK,但是如何获取查看位置??对于for
循环,您正在打开括号{
。您在哪里关闭它?
educationDeleteIcon = (ImageView) item.findViewById(R.id.educationDeleteIcon);