나는 틴더처럼 카드를 스 와이프하여 앱을 만들려고합니다. Texview에 텍스트가있는 Texview가 있습니다. 다음 카드를 스 와이프하면 다른 텍스트가 표시됩니다. 또한 내가하고 싶은 것은 화면에서 카드를 제거하고 다음 버튼으로 이동하기 위해 버튼을 클릭 할 때입니다. 목록에서 첫 번째 String을 제거하고 adapter.notifyDataSetChange를 호출합니다. 문제는 화면의 텍스트가 똑같이 유지된다는 것입니다. 클릭 할 때마다 문자열이 제거됩니다. 나도 어댑터에 값을 기록하고 그것들이 바뀌고 카드의 수가 떨어지고 있지만 화면의 텍스트는 그대로 유지됩니다. NotifyDataSetChanged가 호출되지 않았습니다.
내가 전화 onResponse에서 데이터를 다운로드
는 flingContainer 내가 호출 버튼을 클릭하면list.remove(0);
myAppAdapter.notifyDataSetChanged();
이 내 어댑터입니다 어댑터 뷰 AdapterView
myAppAdapter = new MyAppAdapter(list, this);
flingContainer.setAdapter(myAppAdapter);
을 확장 사용자 정의보기입니다
public class MyAppAdapter extends BaseAdapter {
public List<String> parkingList;
public Context context;
private MyAppAdapter(List<String> apps, Context context) {
this.parkingList = apps;
this.context = context;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
View rowView = convertView;
if (rowView == null) {
LayoutInflater inflater = getLayoutInflater();
rowView = inflater.inflate(R.layout.item, parent, false);
viewHolder = new ViewHolder();
ViewHolder.background = (FrameLayout) rowView.findViewById(R.id.background);
viewHolder.cardImage = (TextView) rowView.findViewById(R.id.cardImage);
rowView.setTag(viewHolder);
} else {
viewHolder = (ViewHolder) convertView.getTag();
}
viewHolder.cardImage.setText(parkingList.get(position));
return rowView;
}
}
내가 시도 하나 너무 그러나 그것은 나를 위해 didnt 한 일뿐만 아니라 많은 다른 것들, 그러나 시간이 무엇을 일부 후 나는 나를 위해 일한'removeAllViewsInLayout()'notifyDataSetChange() 전에 발견했다. 그러나 나는 아직도 왜이 didnt가 작동하는지 모른다. – tinoba
removeItem (index) & list.remove()를 호출해야합니까? – Amir
인스턴스를 다시 확인하십시오. 이 경우 removeAllViewsInLayout은 전혀 권장되지 않습니다. – Amir