在编辑文本视图中编辑特定单词时如何删除底层线

How to remove underlying line when editing specific word in edit Text View

这是我尝试过的方法,到处都找遍了,但什么也没找到

str.setTypeface(notoKyfiBold);
str.setText("دوس هنا للكتابه");
str.setTextColor(Color.BLACK);
str.setGravity(Gravity.CENTER);
str.setFocusable(false);
str.setFocusableInTouchMode(false);
str.setCursorVisible(false);
str.setClickable(false);
str.setMaxLines(15);
str.setEnabled(false);
str.setActivated(false);
str.setSingleLine(false);
str.setMaxTextSize(50);
str.setKeyListener(null);
str.setMinTextSize(0);
str.setHintTextColor(Color.TRANSPARENT);
str.setBackground(null);
str.setBackgroundColor(Color.TRANSPARENT);
str.setSizeToFit(true);
str.setPadding(10,0,10,0);
str.endBatchEdit();
str.setDrawingCacheBackgroundColor(Color.TRANSPARENT);
str.getPaint().setStrokeWidth(4);
str.setHighlightColor(Color.TRANSPARENT);
str.getPaint().setStyle(Paint.Style.STROKE);

该线是正下方的文本,而不是底部边框:

只需在 xml 文件的 edittext 块中添加以下属性:

android:inputType="textNoSuggestions"

这是因为建议。您可以使用

关闭它们
android:inputType="textNoSuggestions"

在 EditText 块中添加以下行

android:background="@null"
android:inputType="textNoSuggestions"

如果您想以编程方式进行,则可以使用以下代码。

//assume an EditText object with name myEditText
myEditText.setInputType(myEditText.getInputType() | InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD | InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);

InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS does not seem to work as expected on all keyboards whereas InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD has the drawback that it also disables toggling the language in the keyboard and the swipe gesture to add the text.