当设置为TextView - android时,EditText值加下划线

时间:2017-06-28 05:04:56

标签: android android-edittext

我的应用程序的MainActivity中有一个FAB按钮。使用EditText按下时会显示AlertDialog。我正在获取editText的值并将其设置为文本视图。但问题是如果我输入一些例如'html'('l'之后没有空格)那么'html'这个词加下划线,如果我在'l'之后输入一个空格或者在最后一个之后输入空格的任何单词字母表,该值未加下划线。那是为什么?

这是编辑文本:

<EditText
    android:id="@+id/project_name"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:inputType="text"
    android:hint="@string/hint"
    android:layout_margin="8dp" />

将值设置为文本视图:

EditText projectName = (EditText) root.findViewById(R.id.project_name);
TextView textView = new TextView(getActivity());
textView.setText(projectName.getText());

先谢谢你们!

3 个答案:

答案 0 :(得分:0)

尝试上面,

EditText projectName = (EditText) root.findViewById(R.id.project_name);
String strEditText = projectName.getText().toString();
TextView textView = new TextView(getActivity());
textView.setText(strEditText);

答案 1 :(得分:0)

您找到了您的EditText Id和TextView,但错误的是您没有获得“EditText”的文本,即“EditText”的可编辑文本是“字符串变量”
查看以下代码。 ...

EditText your_editText = (EditText)findViewById(R.id.Your_EditText_From_XML);
String editTextString = your_editText.getText().toString();

然后将此String变量设置为TextView

TextView YourTextView = new TextView(getActivity());
YourTextView.setText(editTextString);

答案 2 :(得分:0)

导致您获得下划线的原因是 EditText 的 gettext() 方法返回一个 Editable,它与 String/CharSequence 有所不同> 数据类型,这是您的 TextView 的 settext() 方法所期望的。因此,您需要做的就是将可编辑文本转换为字符串,您就可以完成工作了。

这是一个简短而甜蜜的答案-

tvYourTextView.setText(etYourEditText.getText().toString());