Android AutoCompleteTextView CursorAdapter Сбой при использовании пользовательского макета - PullRequest
0 голосов
/ 06 апреля 2011

У меня есть AutoCompleteTextView и я получил CursorAdapter. Теперь все работает нормально, вы используете его с android.R.layout.simple_dropdown_item_1line, но в тот момент, когда вы пытаетесь надуть пользовательский макет, Android сдается.

Работает

@Override
public void bindView(View view, Context context, Cursor cursor) {
  final String text = convertToString(cursor);
  ((TextView) view).setText(text);
}


@Override
public View newView(Context context, Cursor cursor, ViewGroup parent) {
  final LayoutInflater inflater = LayoutInflater.from(context);
  final View view =
          inflater.inflate(
                    android.R.layout.simple_dropdown_item_1line,
                  parent, false);

 return view;
}

Не работает

@Override
  public void bindView(View view, Context context, Cursor cursor) {
      final String text = convertToString(cursor);

      ((TextView) findViewById(R.id.txtAutoCompleteText)).setText(text);
  }


  @Override
  public View newView(Context context, Cursor cursor, ViewGroup parent) {
      final LayoutInflater inflater = LayoutInflater.from(context);
      final View view =
              inflater.inflate(
                        //android.R.layout.simple_dropdown_item_1line,
                      R.layout.auto_complete_item,
                      parent, false);

     return view;
  }

Я знаю, что кто-то уже задавал подобный вопрос и был помечен как ответивший, однако он не удовлетворяет моему запросу.

Есть ли что-то, чего мне не хватает или это просто невозможно?

1 Ответ

0 голосов
/ 09 июня 2011

Покажите нам ваш auto_complete_item.xml и ваш адаптер курсора и вызовите db, чтобы получить курсор.

Вероятно, вы не выбрали правильный идентификатор ресурса по умолчанию для текста в вашем auto_complete_item.xml, т. Е. "@Android: id / list", поэтому система не знает, как получить текстовое поле для заполнения. ваш auto_complete_item

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...