Добавление настроек дисплея в Android TextView - PullRequest
0 голосов
/ 20 мая 2011

Я работаю над модифицированной версией учебника по Android Notepad. Следующий код взят из функции fillData, которая в основном отображает заголовки всех заметок на экране таблицы, слегка измененные:

Cursor notesCursor = mDbHelper.fetchAllNotes();
startManagingCursor(notesCursor);

String[] from = new String[]{NotesDbAdapter.KEY_TITLE, NotesDbAdapter.KEY_SPECIAL};
int[] to = new int[]{R.id.text1, R.id.text2};

SimpleCursorAdapter notes = new SimpleCursorAdapter(this, R.layout.notes_row, notesCursor, from, to);
setListAdapter(notes);

Файл notes_row.xml очень прост:

<TextView
    android:id="@+id/text1"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"/>

Как я могу добавить @+id/text1 к этому XML-файлу, чтобы, когда для поля KEY_SPECIAL установлено значение true (или 1), TextView выделен жирным шрифтом? Что если я захочу использовать CheckedTextView и получить галочку вместо полужирного? Как мне написать XML-файл для поиска этого ввода, чтобы определить, проверен ли он изначально?

1 Ответ

0 голосов
/ 20 мая 2011

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

Посмотрите на Android: BaseAdapter, как? .

...