Мне нужно загрузить данные из курсора в список в моем приложении. Вот мой пользовательский класс адаптера. И он отлично работает. Но мне нужно показать отдельный макет для первой строки списка. Первая строка в списке будет иметь дополнительное изображение. Как я могу это сделать? Пожалуйста, помогите мне. Заранее спасибо.Настройка SimpleCursorAdaper в android
public class CustomSCAdapter extends SimpleCursorAdapter {
Cursor c;
Context context;
Activity activity;
int layout;
public CustomSCAdapter(Context context, int layout, Cursor c, String[] from, int[] to, int flags) {
super(context, layout, c, from, to, flags);
this.c = c;
this.context=context;
this.activity=(Activity) context;
this.layout = layout;
}
@Override
public View newView(Context context, Cursor cursor, ViewGroup parent) {
final View view = LayoutInflater.from(context).inflate(this.layout, parent, false);
return view;
}
@Override
public void bindView(View view, Context context, Cursor cursor) {
//here finding all my views in row from view object and binding data from cursor as per my requirement.
}
}
EDIT: На самом деле i'am передавая нуль для переменного курсора для конструктора класса адаптера как i'am с использованием механизма погрузчиков в моем фрагменте.
getLoaderManager().initLoader(0, null, this);
adapter = new CustomSCAdapter(getActivity(), R.layout.row_layout, null, from, to, 0);
не отменяет NewView. Нет нужды. (означает, что вам не нужно сохранять ссылку на макет, активность, контекст и курсор. SimpleCursorAdapter делает все, что для вас). в bindView, cursor.getPosition() дает вам позицию. если он равен 0, отобразите изображение, а затем скройте его. – njzk2
, но если я прокручу вниз по списку, getposition() снова возвращает 0 – Santhosh
getPosition возвращает 0, когда адаптер курсора связывает первый элемент курсора. как указал Начи, «Первое работает и хорошо, а красивее». – njzk2