本文介绍了如何在XML选择器中使用字体图标(超赞字体)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
是否可以在选择器中使用字体图标而不是可绘制对象?
Is it possible to use font icon in selector instead of drawable ?
<?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>
推荐答案
我更改了选择器中的文本颜色,而不是可绘制的.它的工作正常.
I changed text color in selector instead of drawable.Its working fine.
创建扩展TextView的MyTextView类
Create MyTextView class which extends 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);
}
}
创建text_color_selector.xml选择器
Create text_color_selector.xml selector
<?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>
然后在布局中使用它
<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>
这篇关于如何在XML选择器中使用字体图标(超赞字体)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!