我想在我的android xml代码中使用Bungee内联字体样式
<RelativeLayout
android:id="@+id/sound_setting_layout"
android:layout_width="500dip"
android:layout_height="350dip"
android:layout_marginTop="65dip"
android:layout_marginLeft="780dip"
android:layout_alignParentTop="true"
android:padding="10dip"
android:gravity="center"
android:visibility="gone"
android:background="@drawable/volume_layout"
>
<TextView
android:layout_width="450dip"
android:layout_height="50dip"
android:gravity="center_horizontal"
android:layout_alignParentTop="true"
android:text="Volume Control"
android:textStyle="bold"
android:textColor="#ffffff"
android:textSize="30dip"
/>
我尝试了很多,但我找不到Android中的字体样式Bungee。
答案 0 :(得分:1)
将您的字体文件加载到assets文件夹 然后在你的活动onCreate中,使用以下方法
Typeface face = Typeface.createFromAsset(YOUR_ACTIVITY.this.getAssets(),"fonts/YOUR_FONT_FILE_NAME.otf");
your_text_view.setTypeface(face);
答案 1 :(得分:1)
我们在Android中没有默认的蹦极字体样式,所以如果你想使用它,请下载bungee font .ttf文件并在资产中创建一个名为 fonts 的文件夹并将下载的字体(.ttf)粘贴到那里 在这里你可以下载Bungee字体:https://djr.com/bungee/ 在您的代码中只需执行此操作
// Font path insted of bungee.ttf replace your .ttf file
String fontPath = "fonts/bungee.ttf";
// text view label which you want to apply Bungee font
TextView txtGhost = (TextView) findViewById(R.id.androidSample);
// here loading Font Face
Typeface tf = Typeface.createFromAsset(getAssets(), fontPath);
// Applying font
txtGhost.setTypeface(tf);
答案 2 :(得分:0)
如果您要在整个应用程序中使用自定义字体,例如在多个TextView上,则可以使用Singleton模式,因为反复重新实例化字体会降低应用程序的速度
尝试使用此类并使用您自己的自定义字体替换字体路径,确保您的自定义字体位于&#34; assets&#34;里面的文件夹&#34; main&#34;
public class ProximaTypeface {
public static ProximaTypeface instance = new ProximaTypeface();
public ProximaTypeface() {
}
public Typeface regularTypeFace = null;
public Typeface semiBoldTypeFace = null;
public static ProximaTypeface getInstance() {
return instance;
}
public void getRegularTypeface(Context context, TextView textView) {
if (regularTypeFace == null) {
regularTypeFace = Typeface.createFromAsset(context.getResources().getAssets(), "fonts/proxima_nova_regular.otf");
}
textView.setTypeface(regularTypeFace);
}
public void getSemiBoldTypeface(Context context, TextView textView) {
if (semiBoldTypeFace == null) {
semiBoldTypeFace = Typeface.createFromAsset(context.getResources().getAssets(), "fonts/proxima_nova.otf");
}
textView.setTypeface(semiBoldTypeFace);
}
}
然后在你的活动中:
ProximaTypeface proximaTypeface = new ProximaTypeface();
TextView myTextView = (TextView) findViewById(R.id.textView);
proximaTypeface.getRegularTypeface(context,myTextView);