2012-03-28 2 views

ответ

-2

uhh .... Ответ есть. TextView.setTypeFace()? Вы должны сделать Ctrl + Space в следующий раз, когда он покажет гигантский список классов для TextView или вообще что-нибудь в целом.

+0

Да, я знаю, что ... Я уже установил новый шрифт, но я хотел бы изменить шрифт, когда пользователь нажимает TextView ... Есть ли способ сделать это с помощью селектора или у меня есть использовать onTouchListener? – lost17

+0

uhh .... textview.setonclicklistener или .setontouchlistener? – sdfwer

0

Тип шрифта может легко быть элементом вашего стиля ... Если вы используете стили Android по умолчанию, тогда идея заключалась бы в том, чтобы расширить любой стиль, который вы реализуете, и просто изменить нужные элементы. как следующий элемент стиля, взятый из документации Android стили и темы:

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <style name="CodeFont" parent="@android:style/TextAppearance.Medium"> 
     <item name="android:layout_width">fill_parent</item> 
     <item name="android:layout_height">wrap_content</item> 
     <item name="android:textColor">#00FF00</item> 
     <item name="android:typeface">monospace</item> 
    </style> 
</resources> 

Затем примените этот стиль в вашем селекторе, так же, как вы уже знаете, как это сделать.

Другой вариант, конечно, сделать это в коде, но селектор намного чище

+0

Несомненно, это работает с моноширинкой ... Что делать, если я хочу использовать специальный шрифт? Обычно я загружаю его из актива в Java-код, но с XML, я действительно не знаю, как это сделать ... – lost17

+0

А, я вижу ... К сожалению, это невозможно сделать через XML, если вы не подклассируете TextView для обработки пользовательский атрибут в вашем собственном пространстве имен, вроде того, что они делают [здесь] (http://stackoverflow.com/questions/2973270/using-a-custom-typeface-in-android) (второй ответ) и затем применяя то же пространство имен в вашем атрибуте style. – JRaymond

+0

О да! Спасибо :) – lost17

1

К сожалению, сейчас это не представляется возможным.
Существует билет на том, что в коде Android репо:
https://code.google.com/p/android/issues/detail?id=8941

Ваш лучший вариант заключается в управлении его самостоятельно в ontouch слушателей (да и это некрасиво) или реализовать эти новые селекторы себя.

Смежные вопросы