为什么Android Custom字体需要花费太多时间?

时间:2014-03-17 16:46:36

标签: android custom-font timedelay

F1!我正在研究Android应用程序的另一个活动,在这个活动中,我在urdu语言的8个文本视图中应用自定义字体,但显示此活动需要12到15秒,如果我删除自定义字体,则需要1-2秒使用默认字体显示此活动,但默认情况下,android urdu语言字体不是很好。请记住,我从未在.xml文件中使用任何字体活动。有什么想法吗?

我的Java代码:

public class JismPics extends Activity {
    TextView txtView;
@Override
   protected void onCreate(Bundle savedInstanceState) { 
   super.onCreate(savedInstanceState);
   setContentView(R.layout.jism_pics);

    txtView = (TextView) findViewById(R.id.textResult);
    Typeface myCustomFont = Typeface.createFromAsset(getAssets(), "fonts/noori.ttf");
    txtView.setTypeface(myCustomFont);

  }
}

1 个答案:

答案 0 :(得分:0)

我在我开发的许多应用程序中使用自定义字体,从来没有遇到过这个问题。也许您可以覆盖视图,这样您就不必更改onCreate()方法上的字体

这样的事情:

public class MyTextView extends TextView
{

public MyTextView(Context context, AttributeSet attrs, int defStyle)
    {
        super(context, attrs, defStyle);
        Typeface font = Typeface.createFromAsset(context.getAssets(), "fonts/NeoSans.otf");
        this.setTypeface(font);
    }

public MyTextView(Context context, AttributeSet attrs)
    {
        super(context, attrs);
        Typeface font = Typeface.createFromAsset(context.getAssets(), "fonts/NeoSans.otf");
        this.setTypeface(font);
    }
public MyTextView(Context context)
    {
        super(context);
        Typeface font = Typeface.createFromAsset(context.getAssets(), "fonts/NeoSans.otf");
        this.setTypeface(font);
    }

}

不要忘记在布局上调用自定义类。

<com.myproject.util.guicomponents.MyTextView
                  android:id="@+id/txt_name"
                  android:textSize="22sp"
                  android:layout_width="wrap_content"
                  android:layout_height="match_parent"
                  android:text="@string/txt_reg_name"                             
                  android:layout_gravity="center_vertical"
                  android:layout_marginLeft="15dp"
                  />