2013-04-06 43 views
1

我放在screen.and中心一個ListView我開始一個動畫:如何避免listview重置位置notifyDataSetChanged後?

hideAnimation= new TranslateAnimation(0, -220, 0, 0); 
hideAnimation.setDuration(500); 
hideAnimation.setFillBefore(false); 
hideAnimation.setFillAfter(true); 
hideAnimation.setAnimationListener(this); 

而且在方法onAnimationEnd,我清晰動畫和設置佈局是這樣的:

mlistView.layout(-220, 0, 500, 500); 

和一切正常罰款到目前爲止。 但經過mlistView.layout(-220,0,500,500),我需要刷新我的listview.so我只是叫

adapter.notifyDataSetChanged(); 

然後我的ListView回來在屏幕中央...

任何人都知道如何處理這個?

回答

0

保存參數的位置x , y , z 調用notifyDataSetChanged後,你可以做到這一點

yourlistView.setLocation(x,y,z); 

和你的ListView添加此功能

public setLocation(int x, int y, int z){ 
//Do whatever you want 
} 
+0

最後我用AbsoluteLayout和AbsoluteLayout.LayoutParams設定的部份位置。它的工作原理。感謝您的幫助 – user2194312 2013-04-07 03:19:35

+0

非常歡迎 – 2013-04-07 06:12:29

相關問題