views:

27

answers:

0

Hi, I am using several listview's in my application that receive many notifications each second on a thread. when this happens i update data in the array adapter and then call notifiyDataSetChanged() on the UI thread.

However this causes getView to be called on the adapter on all the visible postions. this is causes various issues for me.
1. in the getView i cannot tell which view actually got updated ( i would like to do something in case it was).
2. if i manage to know what was updated based on a flag on the ArrayAdapter and try to perform some animation sometimes the animation doest trigger ( Perhaps getView is called with a disposable view for some reason).
3. since views are recycled i cannot tell what were the previous values in the rows TextView.

What im trying to do is simply have a list of items that updates allot. everytime a row updates do an animation on that row for 2 seconds (only if the row data changed ) based on the previous value that was in the row.

Please any help on how to achieve this?

Thanks, Totem