İOS'ta, UITableView satırlarının eklenmesini ve kaldırılmasını canlandırmak için çok kolay ve güçlü bir tesis var , burada bir youtube videosundan varsayılan animasyonu gösteren bir klip var . Çevredeki satırların silinen satıra nasıl daraldığını unutmayın. Bu animasyon, kullanıcıların bir listede nelerin değiştiğini ve veriler değiştiğinde listede neye baktıklarını takip etmelerine yardımcı olur.
Android'de geliştirdiğimden beri, bir TableView'daki satırları tek tek canlandıracak eşdeğer bir tesis bulamadım . notifyDataSetChanged()
Bağdaştırıcımı çağırmak ListView'ın içeriğini yeni bilgilerle derhal güncellemesine neden olur. Veri değiştiğinde içeri iten veya kayan yeni bir satırın basit bir animasyonunu göstermek istiyorum, ancak bunu yapmak için herhangi bir belgelenmiş yol bulamıyorum. Görünüşe göre LayoutAnimationController bunun işe yaraması için bir anahtar tutabilir, ancak ListView ( ApiDemo'nun LayoutAnimation2'ye benzer) bir LayoutAnimationController ayarladığımda ve öğeler görüntülendikten sonra bağdaştırıcımdaki öğeleri kaldırdığımda öğeler hemen kayboluyor .
Ayrıca kaldırıldığında tek bir öğeyi canlandırmak için aşağıdaki gibi şeyleri denedim:
@Override
protected void onListItemClick(ListView l, View v, final int position, long id) {
Animation animation = new ScaleAnimation(1, 1, 1, 0);
animation.setDuration(100);
getListView().getChildAt(position).startAnimation(animation);
l.postDelayed(new Runnable() {
public void run() {
mStringList.remove(position);
mAdapter.notifyDataSetChanged();
}
}, 100);
}
Ancak, animasyonlu satırı çevreleyen satırlar notifyDataSetChanged()
çağrıldığında yeni konumlarına atlayana kadar konumu hareket ettirmez . ListView, öğeleri yerleştirildikten sonra düzenini güncellemiyor gibi görünüyor.
ListView kendi uygulaması / çatal yazmak aklımdan geçti, bu çok zor olmamalı bir şey gibi görünüyor.
Teşekkürler!