Java 从EditText获取文本字符串?
似乎我不知道如何从Java 从EditText获取文本字符串?,java,android,android-edittext,Java,Android,Android Edittext,似乎我不知道如何从EditText中获取文本字符串。 我想在按下按钮时使用EditText中的文本 layout.xml: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/popup_menu_root" android:background="#FFFF
EditText
中获取文本字符串。
我想在按下按钮时使用EditText
中的文本
layout.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/popup_menu_root"
android:background="#FFFFFF"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<Button android:id="@+id/popup_menu_button"
android:text="ok"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
<EditText
android:id="@+id/edittext"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
</LinearLayout>
我自己解决了这个问题:
final EditText edittextDescription = (EditText) findViewById(R.id.edittext);
一定是
final EditText edittextDescription = (EditText)layout.findViewById(R.id.txtDescription);
然后我可以这样做,得到字符串
String s = edittext.getText().toString();
试试这个:
EditText edt = (EditText)findViewById(R.id.edittext);
String xyz = edt.getText().toString();
您不能只执行
String String=(EditText)layout.findViewById(R.id.txtDescription).getText().toString
?是的,您可以。但两次查找比同时保留对EditText的引用要慢。@Shark 2018年的查找速度还会慢吗?你能详细说明一下为什么速度慢吗?我是一只好奇的猫,它总是比较慢。Android在用户界面方面不是很聪明——这就是为什么它会生成R.java文件,其中包含一个特定视图的生成/硬编码ID列表,这样你就可以通过它们的父母在屏幕上“找到”它们。也就是说,如果您找到它一次,并保存对该视图的引用,那么多次获取它的字符串文本将比再次找到它(N次)并获取它的字符串内容更快。不过,你可以自由测量速度有多快。
EditText txtDescription =
(EditText) layout.findViewById(R.id.txtDescription);
String message = txtDescription.getText().toString();
EditText edt = (EditText)findViewById(R.id.edittext);
String xyz = edt.getText().toString();