Я хочу просто TextView
вести себя так, как simple_list_item_1
это ListView
делает. Вот XML:
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content" android:layout_width="fill_parent"
android:gravity="center" android:focusable="true"
android:minHeight="?android:attr/listPreferredItemHeight"
android:textAppearance="?android:attr/textAppearanceLarge"
android:background="@android:drawable/list_selector_background" />
Все работает, за исключением цвета текста, который (как ожидается) не меняется в сфокусированном состоянии. Как мне изменить это на textAppearanceLargeInverse
?
android
textview
android-selector
Янченко
источник
источник
Ответы:
Я прошел несколько тестов, пока один не сработал, поэтому: res / color / button_dark_text.xml
разреш / макет / view.xml
источник
android:textColor="@color/button_dark_text"
res/color
папке?И селектор ответ здесь тоже.
Найдите в исходных текстах файл bright_text_dark_focused.xml, добавьте его в каталог res / color и затем обратитесь к TextView как
источник
ListFragment
, и в результате получилось куча ошибок . Что я делаю не так?Вот моя реализация, которая ведет себя точно как элемент в списке (по крайней мере, на 2.3)
разреш / макет / list_video_footer.xml
Рез / цвет / bright_text_dark_focused.xml
источник
Чтобы заставить его работать с выделением в виде списка, используйте следующий код:
Видимо, ключ является
state_activated="true"
государственным.источник
Вот пример селектора. Если вы используете eclipse, он не предлагает что-то, когда вы нажимаете ctrl и пробел оба: / вы должны ввести его.
Вы можете посмотреть для справки;
http://developer.android.com/guide/topics/resources/drawable-resource.html#StateList
источник
Я всегда использовал вышеупомянутое решение, не ища больше после этого. ;-)
Однако сегодня я наткнулся на что-то и подумал поделиться этим. :)
Эта функция действительно доступна из API 1 и называется ColorStateList , где мы можем предоставить цвет для различных состояний виджетов (как мы уже знаем).
Это также очень хорошо задокументировано, здесь.
источник
В
res/color
месте файл «text_selector.xml»:Тогда в
TextView
использовании это:И в коде вам нужно установить прослушиватель кликов.
Извините, если есть ошибки, я изменил код перед публикацией и не проверял.
источник
Если использовать TextViews во вкладках, это определение селектора сработало у меня (пробовал Клауса Балдуино, но не сработало):
источник
Ты пробовал
setOnFocusChangeListener
? Внутри обработчика вы можете изменить внешний вид текста.Например:
Затем вы можете применить любые изменения, которые вы хотите, когда он сфокусирован или нет. Вы также можете использовать ViewTreeObserver для прослушивания глобальных изменений фокуса.
Например:
Я надеюсь, что это помогает или дает вам идеи.
источник