0

我是android开发的新手。在一个 XML 文件中,我有 2 个数字文本字段和一个按钮,通过按下按钮我想获取用户输入的文本字段的内容并在另一个类中使用它,我知道我应该使用button.OnClickListener方法但是在这个函数中放什么?

4

3 回答 3

4

我想如果你一步一步地解决你的问题并用谷歌搜索,你就能得到答案。这都是把事情放在一起的问题。

你可以问自己的问题:

  1. 如何从 TextView 中获取数据?

  2. 如何将其发送到另一个活动?

  3. 如何在另一个活动中接收数据?

为了方便起见,这里有一些可以帮助你的东西:

在该函数 ( button.OnClickListener) 中尝试从以下位置获取文本TextView

TextView tv1 = (TextView)findViewById(R.id.tv1);
String input1 = tv1.getText().toString(); //tv1 is textView
TextView tv2 = (TextView)findViewById(R.id.tv2);
String input2 = tv2.getText().toString();

然后,您可以使用意图将该文本传输到另一个活动:

Intent i = new Intent(CurrentClassName.this, DestinationClass.class);
i.putExtra("text1", input1); //include the strings that you got from textView
i.putExtra("text2", input2);
startActivity(i); 

在目标活动中,您可以提取这些字符串,onCreate()如下所示:

Intent intent = getIntent();
String text1 = intent.getExtras().getString("text1");
String text2 = intent.getExtras().getString("text2");

希望这可以帮助。

于 2013-08-08T20:22:11.567 回答
0

确保您正在设置android:id布局文件中的文本字段。从内部完成后,button.OnClickListener您可以通过 id 找到文本视图并按如下方式获取文本:

TextView tv = (TextView)findViewById(R.id.id_of_text_field);
String text = tv.getText().toString();

然后转移到另一个活动,将字符串添加到 aBundle并添加BundleIntent如下:

Intent intent = new Intent(this, NextActivity.class);
Bundle bundle = new Bundle();

bundle.putString(KEY_TO_FIND_STRING, text);
intent.putExtras(bundle);
startActivity(intent);

然后在您的新活动中,您从捆绑包中获取字符串,如下所示:

Bundle b = getIntent().getExtras();
String text = null;

if( b != null ){
     text = b.getString(KEY_TO_FIND_STRING);
}
于 2013-08-08T20:30:26.230 回答
0

SetOnClickListner的方法Button需要一个实例View.OnClickListener,这个实例通常是匿名实现的,如下所示:

button.setOnClickListner(new View.OnClickListner(){
   public void onClick(View v){
      //code which runs when action performed
   }
}

在这个监听器中,您可以实现您的逻辑,例如将两个数字相加

String s1 = editText1.getText();
String s2 = editText2.getText();
int sum = Integer.parseInt(s1) + Integer.parseInt(s2);

您可以查看Shobhit Puri更多详细信息

看:

听众

View.OnClickListner

于 2013-08-08T20:31:20.613 回答