在Android LatinIME键盘中使用自定义字体

时间:2012-08-24 06:57:01

标签: android android-softkeyboard

我正在开发一个Android键盘,通过修改LatinIME键盘来编写最初没有安装android的语言。因此,在使用该键盘进行书写时,我正尝试在EditText字段中使用除默认android字体之外的字体。

请注意,我不希望更改Keys的字体,我希望根据我的字体更改输入文本的字体。

现在,在EditText字段中输入文本时,如果我可以获得该EditText字段的引用,那么任务就像以下一样简单:

Typeface myTypeface = Typeface.createFromAsset(getAssets(), "fonts/myFont.ttf");
referenceToEditText.setTypeface(myTypeface);

但问题是如何获取EditText字段(我输入文本的字段)的引用?

任何想法?

2 个答案:

答案 0 :(得分:0)

在您的活动的onCreate函数中,获取edittext(使用您在XML布局文件中设置的ID),然后调用setTypeFace:

EditText myEditText = (EditText) findViewById(R.id.myEditText);
myEditText.setTypeface(Constant.APP_FONT);

答案 1 :(得分:0)

你是在谈论从键盘输入Edittextfield吗? 检查一下:

InputConnection ic = getCurrentInputConnection();

        CharSequence currentText = ic.getExtractedText(new ExtractedTextRequest(), 0).text;

        //Toast.makeText(this, currentText, Toast.LENGTH_LONG).show();