如何在Android中修改自定义键盘的ExtractedEditText



我想在自定义键盘的提取文本视图中更改文本的字体和文本大小。如何获得对EditText的引用?

我刚刚通过检查InputMethodService源代码学会了如何做到这一点,所以我将其作为问答发布。我的答案如下。

您可以通过重写InputMethodService子类中的onCreateExtractTextView()来获取对ExtractedEditText的引用。在传递它之前,您可以随心所欲地修改它。

@Override
public View onCreateExtractTextView() {
View extractedView = super.onCreateExtractTextView();
ExtractEditText editText = extractedView.findViewById(android.R.id.inputExtractEditText);
editText.setTypeface(myTypeFace);
editText.setTextSize(myTextSize);
return extractedView;
}

请注意,文档说:

public View onCreateExtractTextView ()

由框架调用以创建用于显示扩展(原文如此(的布局 发短信。仅在全屏模式下调用。返回的视图层次结构 必须有一个 ID 为R.id.inputExtractEditTextExtractEditText

最新更新