Liste görünümü addHeaderView pozisyon bir artış olur?
Aşağıda bir liste Görünümü ile bir kod parçası. Bir emptyView ve bir headerView ekledim. Bu headerView ekleme onİtemClick pozisyonu bir artış neden olur.
Bu headerView olmadan ilk liste öğesinin konumu ilk liste öğesinin konumu 1 olur headerView ile 0, olurdu!
Bu benim adaptör hataları getıtem çağırırken, örneğin neden() ve diğer bazı yöntemler kullanarak, aşağıya bakın. Garip şey: getView() ilk liste öğesi ise headerView eklenirse bile pozisyon 0 ile istenen adaptörün yöntemi!!
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
ListView list = (ListView) viewSwitcher.findViewById(R.id.list);
View emptyView = viewSwitcher.findViewById(R.id.empty);
list.setEmptyView(emptyView);
View sectionHeading = inflater.inflate(R.layout.heading, list, false);
TextView sectionHeadingTextView = (TextView) sectionHeading.findViewById(R.id.headingText);
sectionHeadingTextView.setText(headerText);
list.addHeaderView(sectionHeading);
list.setAdapter(listAdapter);
list.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
listAdapter.getItem(position);
//Do something with it
}
});
}
Bazı adaptörü yöntemleri:
@Override
public int getViewTypeCount() {
return TYPE_COUNT;
}
@Override
public int getItemViewType(int position) {
return (position < items.size()) ? ITEM_NORMAL : ITEM_ADVANCED;
}
@Override
public Product getItem(int position) {
return items.get(position);
}
@Override
public boolean areAllItemsEnabled() {
return false;
}
@Override
public boolean isEnabled(int position) {
return (position < items.size());
}
Bu bir headerView eklerken normal bir davranış mı? Ve nasıl benim adaptör sorunları aşmak için?
CEVAP
Ben sadece bu sorunla karşılaştım ve en iyi yolu ListView
sürümü başlıkları, yani hesapları ListAdapter.getItem(position)
yerine ListView.getItemAtPosition(position)
kullanmak gibi görünüyor:-
Bunun yerine:
myListView.getItemAtPosition(position)
Liste Görünümü kaydırma arka plan siya...
Liste Görünümü çağırırken ClassCastExc...
İçerik 'android olan bir liste Gö...
Liste Görünümü altbilgi gizlemek?...
Android: bir liste Görünümü çocuk görü...