Android - настройка высоты для элементов ListView - PullRequest
0 голосов
/ 12 октября 2011

У меня проблема с определением макета в моем приложении. Я следовал «учебнику по блокнотам» на сайте разработки Android, все работает отлично, но единственное, чего я не могу достичь, это установить высоту элемента ListView. Предметы такие же широкие и высокие, как и их содержание.

Вот мое XML-определение макета:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_height="fill_parent" android:layout_width="match_parent" android:orientation="vertical">
    <ListView android:layout_width="fill_parent" android:id="@+id/android:list" android:transcriptMode="alwaysScroll" android:layout_height="match_parent">
    </ListView>

<TextView xmlns:android="http://schemas.android.com/apk/res/android"
      android:id="@+id/text1"
      android:layout_width="fill_parent"
      android:layout_height="80dp"  
      android:padding="10dp"
      android:textSize="16sp"/>

</LinearLayout>

В моем коде я вызываю только в методе oncreate () весь ListView, а затем в этом методе, который отвечает за заполнение элементов списка данными из SQLLite

 private void fillData() {
    // Get all of the rows from the database and create the item list
    Cursor mNotesCursor = mDbHelper.fetchAllNotes();
    startManagingCursor(mNotesCursor);

    // Create an array to specify the fields we want to display in the list (only TITLE)
    String[] from = new String[]{NotesDbAdapter.KEY_TITLE};

    // and an array of the fields we want to bind those fields to (in this case just text1)
    int[] to = new int[]{R.id.text1};

    // Now create a simple cursor adapter and set it to display
    SimpleCursorAdapter notes = 
            new SimpleCursorAdapter(this, R.layout.notes_row, mNotesCursor, from, to);
    setListAdapter(notes);

}

Даже когда я пытался установить некоторые сумасшедшие значения в моем XML как атрибуты TextView, высота элементов, цвет текста, все оставалось неизменным. Я полагаю, это должно быть просто, но, к сожалению, я не могу сделать это с

1 Ответ

1 голос
/ 12 октября 2011

попробуйте установить высоту в R.layout.notes_row

notes_row.xml - представление вашего макета элемента

и установите необходимую высоту для этого макета.

этот макет передается в следующем адаптере для элемента

SimpleCursorAdapter notes = 
            new SimpleCursorAdapter(this, R.layout.notes_row, mNotesCursor, from, to);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...