2010-11-21 19 views
0

Dahili duruma göre öğeleri görüntüleyebilen bir liste görünümüm var (bu, öğelerine ve 'görüntülenen öğelere sahiptir). iki durum arasında geçiş yapabilmem gerekir, bunu adaptörün durumunu değiştiren basit bir düğme kullanarak ve sonra notifyDatasetChanged() olarak adlandırılan bağdaştırıcıyı kullanarak yaparım. Benim veri güncellendiğinde ETMEZ, ancak ben iki sorunla karşı karşıya idi: Bir önceki modda liste kısmen kaydırıldığını ben veri kümesi değiştirdikten sonra ben yarı yolda olsaydı, o (o halde kaldı Bağdaştırıcı verileri değiştirildikten sonra bir ListView'i yeniden boyutlandırma

  1. aşağı Ben de yeni veri kümesinde aşağı aşağı yarısı olacak, bu ben istiyorum davranış, ama ben man pozisyonu manuel herhangi bir fikir manuel kaydırmak için bir yol bulamayan herhangi bir fikir? (setSelected değil Ben tam olarak bir çözüm dokunma modunda kalmak istiyorum herhangi bir seçim istemiyorum beri)
  2. Listemde her öğe net olarak getirilen bir görüntü vardır bu yüzden ağ yöneticimi kullanarak getiriliyor ve ben YALNIZCA bu ekranda ilk kez ben görüntülüyorsanız VEYA kaydırma durumu idlle ise, ben getView yönteminden görüntüleri yüklemeye başlamak istemedim Ekranı fırlatırsam, çok fazla gereksiz görüntüleri yükleyebilir. Ancak notifyDatasetChanged() öğesini çağırırken, kaydırma dinleyicisi yöntemleri çağrılmaz. Verilerim boş olmamasına rağmen notifyDatasetInvalidated kullanarak bunu çözdüm, bu sorunu çözmek için daha iyi bir yol var mı?

cevap

0

# 1 ile ilgili olarak benim hatam, şu anda dokunmatik modda hiçbir seçim yapılmayacaksa, görünüşe göre belgeyi okumuştum, bu yüzden iş setSelectedPosition() tarafından yapılıyor.

# 2 ile ilgili olarak hala emin değilimDatasetInvalidated emin olmak için çözüm olduğundan emin olun.

İlgili konular