Ich habe eine ListView und ich möchte ein Element daraus entfernen.Animation wird zweimal aufgerufen
Nach dem Benutzer Folien von rechts nach links Animation des weggehenden Artikels beginnt. Dann sollte dieser Artikel entfernt werden.
Mein Code:
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
if(convertView==null){
convertView = layoutInflater.inflate(R.layout.note,null);
}
final RelativeLayout relativeLayout = (RelativeLayout) convertView.findViewById(R.id.relativeLayout);
TextView textView = (TextView) convertView.findViewById(R.id.textView9);
textView.setText(arrayList.get(position));
Button button = (Button) convertView.findViewById(R.id.button10);
button.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
x = event.getX();
}
if (event.getAction() == MotionEvent.ACTION_UP) {
if (Math.abs(event.getX() - x) > (float)150) {
Log.e("Point_1", "Begin animate");
arrayList.remove(position);
ObjectAnimator objectAnimator = ObjectAnimator.ofFloat(relativeLayout, "x", 0 - relativeLayout.getWidth());
objectAnimator.setDuration(600);
objectAnimator.start();
Log.e("Point_1", "Start removing");
ListViewAdapter.this.notifyDataSetChanged();
}
}
return false;
}
});
}
Wenn ich meine App fast alles laufen geht in Ordnung. Elemente werden nach dem Verschieben entfernt. Die Animation zum Entfernen der Ansicht ist ebenfalls in Ordnung. Aber! Irgendwie startet ein Gegenstand, der sich direkt unter meiner entfernenden Ansicht befand, auch eine Animation und danach (Animation) wird er nicht aus listView entfernt. Was ist falsch?
Vor dem Entfernen:
und nach (3 Artikeln - 2 Texte):