В Android 3.0 поняття "перевірено" можна відтворити за допомогою "активованого" фону. Це дає вам стійкий рядок, який ви бачите при натисканні на фрагмент списку, забезпечуючи контекст для фрагмента праворуч від списку (наприклад, натискання на папку в Gmail виділяє цю папку та відкриває інший фрагмент списку, щоб показати розмови в цій папці ).
Наприклад, фрагменти фрагментів показують такі речі, як:
setListAdapter(new ArrayAdapter<String>(getActivity(),
android.R.layout.simple_list_item_activated_1, Shakespeare.TITLES));
Цей ресурс ( android.R.layout.simple_list_item_activated_1
) є новим для Android 3.0. Що робить його "активованим":
android:background="?android:attr/activatedBackgroundIndicator"
Це значення атрибута є новим для Android 3.0 і призведе до аварійного завершення роботи, якщо ви спробуєте використовувати його в попередніх версіях Android, наскільки я можу сказати. Я хочу встановити фон для цього магічного значення для комбінації 3,0 / великий / пейзаж, і в іншому випадку пропустити його.
Я можу досягти цього, маючи дві окремі версії макета, одну в -v11
наборі ресурсів, одну в звичайному наборі ресурсів. Однак це трохи менше СУХОГО, ніж я хотів би, оскільки основна частина макета однакова, лише цей атрибут або включений, або пропущений.
Я вдарився, намагаючись використати псевдоніми ресурсів, які можна залучати, тому псевдонім android:background
міг би посилатися на псевдонім, і псевдонім міг би впоратися з -v11
диференціацією, але <bitmap>
, схоже , малюнки не люблять android:src="@null"
.
Я підозрюю, що до цієї проблеми підходить стилі та теми, але оскільки я ніколи не обмотував їх повністю (один із моїх незручніших прогалин у знаннях Android), я не зовсім впевнений, що робити.
Хто-небудь розробляв шаблон для використання "активованого" на 3.0 та пропускання його на попередньому 3.0, окрім окремих макетів?
Дякую!