Cómo utilizar el icono de fuente (fuente-impresionante) en el selector de XML
¿Es posible utilizar el icono de fuente en el selector en lugar de dibujable?
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android" > <item android:drawable="@drawable/menu_home_press" android:state_pressed="true"></item> <item android:drawable="@drawable/menu_home"></item> </selector>
- Dimens.xml en la carpeta de valores de 7 "y 10" tableta, ¿cómo?
- Selector desplegable con la misma imagen pero diferente opacidad
- Configuración de la orientación de la pantalla Actividad de Android con values.xml
- Android.view.InflateException: Línea de archivo XML binario # 33: Error al inflar la clase
- Error al analizar XML: prefijo no enlazado con barra de herramientas sdk 21
- OnConfigurationChanged () no se dispara para keyboardHidden
- ¿Hay algún uso legítimo para @ + android: id?
- Por qué el flag isLockTaskPermitted es falso
- ¿Cómo puedo obtener un Android TableLayout para llenar la pantalla?
- ¿Hay una manera de mostrar los números primero en el teclado virtual para Android?
- Animación flotante suave con traducción en XML
- Análisis de un archivo XML en Java para obtener una lista de nombres
- ¿Cómo puedo editar las dimensiones de un elemento de menú PopUp en Android?
Cambié el color del texto en selector en vez de dibujable. Su funcionamiento muy bien.
Crear una clase MyTextView que extienda TextView
public class MyTextView extends TextView { public MyTextView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); init(context); } public MyTextView(Context context, AttributeSet attrs) { super(context, attrs); init(context); } public MyTextView(Context context) { super(context); init(context); } private void init(Context context) { Typeface tf = Typeface.createFromAsset(context.getAssets(), "fontawesome-webfont.ttf"); setTypeface(tf); } }
Crear selector text_color_selector.xml
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:color="#ff0000" android:state_pressed="true" /> <!-- pressed --> <item android:color="#ff0000" android:state_focused="true" /> <!-- focused --> <item android:color="#000000" /> <!-- default --> </selector>
Y luego usarlo en su diseño
<com.example.mohsin.myapplication.MyTextView android:layout_width="match_parent" android:layout_height="wrap_content" android:textSize="50sp" android:clickable="true" android:textColor="@drawable/text_color_selector" android:text="\uF242"> </com.example.mohsin.myapplication.MyTextView>
Puede utilizar los iconos font-awesome de la siguiente manera:
1 – Copia el archivo de fuentes font-awesome en tu directorio de activos
2 – Encontrado las entidades de caracteres para los iconos que quería, utilizando esta página
3 – Crear entrada en strings.xml para cada icono. P.ej:
<string name="icon_eg"></string>
4 – Cargar la fuente en el método onCreate y establecerla para las Vistas apropiadas:
Typeface font = Typeface.createFromAsset( getAssets(), "fontawesome-webfont.ttf" ); ... Button button = (Button)findViewById( R.id.like ); button.setTypeface(font);
No olvide hacer referencia a la cadena en la vista.
<Button android:id="@+id/my_btn" style="?android:attr/buttonStyleSmall" ... android:text="@string/icon_eg" />
Compruebe este acoplamiento para más Info.
No puede utilizarlo como selector. Pero puede cambiar dinámicamente los iconos.