我有一个editText,如何让用户输入文字?
例如,这是我的editText
<EditText
android:id="@+id/editText3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:maxLength="10">
</EditText>
并且用户键入了嗨,在我的下一个Activity中,如果用户输入Hi显示在下一个Activity Hello中,我该怎么做?等等,如果用户输入你下一个活动怎么显示我很好?
我用什么?它与数据库有关吗?
答案 0 :(得分:3)
首先,选取当前活动中的文本,即视图托管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);
答案 1 :(得分:1)
最简单的方法是使用Intent
的{{1}}和getExtra()
方法,进行简单的putExtra()
比较并返回结果。
以下是让您入门的内容:How do I get extra data from intent on Android?和How do I compare strings in Java?。
但是根据您所写的内容,您似乎正在尝试制作一个聊天应用程序,其中您的应用程序会响应用户输入的消息。为此,我建议您使用AIML。这是一个漫长的远景,但值得。
答案 2 :(得分:1)
我们假设您的班级名称是:Main
首先声明一个静态公共字符串:
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);