繁体   English   中英

Android获取在EditText中键入的文本

[英]Android get text typed in EditText

我有一个editText,如何获取用户键入的文本?

例如,这是我的editText

<EditText
   android:id="@+id/editText3"
   android:layout_width="match_parent"
   android:layout_height="wrap_content" 
   android:maxLength="10">
</EditText>

并且用户键入了Hi,在我的下一个活动中如何显示?如果用户键入了Hi,则在下一个活动Hello中显示。

我要用什么? 和数据库有关吗?

首先,在当前活动(即视图中托管EditText组件的活动)中拾取文本。

EditText txt = (EditText)findViewById(R.id.editText3);
String input = txt.getText().toString();

现在,将其添加为额外数据并调用您的新活动。

Intent i = new Intent(getApplicationContext(), NewActivity.class);
i.putExtra("input",input);
startActivity(i);

NewActivity onCreate()里面:

Intent i = getIntent();
String input = i.getStringExtra("input");

瞧,您在新活动中输入了文本。

要将其设置为新的TextView

TextView txtView = (TextView)findViewById(R.id.yourTextView);
txtView.setText(input);

最简单的方法是使用IntentgetExtra()putExtra()方法,进行简单的String比较并返回结果。

以下是一些入门指南: 如何从Android上的Intent中获取更多数据? 以及如何比较Java中的字符串?

但是从您所写的内容来看,您似乎正在尝试创建一个聊天应用程序,其中您的应用程序响应用户键入的消息。 为此,我建议您使用AIML 这是一个很长的远景,但值得。

假设您的班级名称是: Main

首先声明一个静态public String:

public static String myText;

现在,在您的OnCreate方法中键入:

EditText et = (EditText) findViewById(R.id.editText3);

最后,在您的OnClick方法中输入:

myText = getText().toString();
Intent x = new Intent(getApplicationContext(), NewActivity.class);
startActivity(x);

现在,在下一个活动中,您只能使用来访问字符串:

Main.myText

举个例子:

TextView txt =(TextView) findViewById(R.id.textviewid);
txt.setText(Main.myText);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM