Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将整数传递给Android中的新活动?_Java_Android_Android Intent - Fatal编程技术网

Java 如何将整数传递给Android中的新活动?

Java 如何将整数传递给Android中的新活动?,java,android,android-intent,Java,Android,Android Intent,我不熟悉安卓系统。我从MainActivity获取一个字符串和一个数值作为输入。 按下按钮后,将调用调用第二个活动的以下方法。 我传递的值是否正确? 如果是,我如何接收这两个值以在第二个活动中使用,然后打印它们 public void sendMessage(View view) { Intent intent = new Intent(this, DisplayMessageActivity.class); EditText editText1 = (EditText) fin

我不熟悉安卓系统。我从MainActivity获取一个字符串和一个数值作为输入。 按下按钮后,将调用调用第二个活动的以下方法。 我传递的值是否正确? 如果是,我如何接收这两个值以在第二个活动中使用,然后打印它们

public void sendMessage(View view) {
    Intent intent = new Intent(this, DisplayMessageActivity.class);
    EditText editText1 = (EditText) findViewById(R.id.name);
    EditText editText2 = (EditText) findViewById(R.id.ma);
    String message = "Hi ! " + editText1.getText().toString();
    int i = Integer.parseInt(editText2.getText().toString());
    intent.putExtra("lol",message);
    startActivity(intent);
}

另外,我知道我根本没有传递整数。我不知道怎么做。请帮忙

您只需将此函数用于整数值 在第二项活动中

    int i = getIntent().getIntExtra(SendingStringName, 0);
    (or)
    String progress = getIntent().getStringExtra(SendingStringName);
    (or)
    ArrayList< String> progress = getIntent().getStringArrayListExtra(name);
int i=getIntent().getIntExtra(sendingstrinname,0);
(或)
String progress=getIntent().getStringExtra(SendingStringName);
(或)
ArrayListprogress=getIntent().GetStringArrayListXTRA(名称);

从新的
活动中
您应该调用
getIntent()

一旦你有了
意图
你就必须调用
getIntExtra(String,int)

在您的情况下,从新活动中可以看到:

Intent intent = getIntent();
int lol = intent.getIntExtra("lol", 0);
或更短:

int lol = getIntent().getIntExtra("lol", 0);
如果不存在额外的“lol”,则“0”是int的默认值。

要发送数据:

EditText editText1 = (EditText) findViewById(R.id.name);
EditText editText2 = (EditText) findViewById(R.id.ma);
String message = "Hi ! " + editText1.getText().toString();
int i = Integer.parseInt(editText2.getText().toString());

Bundle param = new Bundle();
param.putString("greeting",message);
param.putInteger("NumberInteger",i);

Intent intent = new Intent(this, DisplayMessageActivity.class);
intent.putExtras(param);
startActivity(intent);
要接收它们: 在DisplayMessageActivity.java类中执行以下操作:

Intent it = getIntent();
Bundle param = it.getExtras();
String capturedMessage= param.getString("greeting");
Integer captured_I = param.getInteger("NumberInteger");

您可以使用
getIntent()
检查我需要在第二个活动中接收一个整数来访问其他活动中的意图。我该怎么做呢?为什么你需要给出
String
ArrayList
额外的例子。仅使用
getIntExtra
示例就足够了。getIntent()不应该只使用一次,然后我们提取所有数据吗?你能解释一下这样使用它吗?你可以使用这些类型的数据提取我只是发布了这些方法你可以发送数据,我发布了一些示例方法来提取其他数据,这是额外的信息,伙计,你以后可能会使用它,所以只有我把它放在这里…你只需要为你的解决方案做第一行谢谢!马上解决。但我仍然不明白“0”的用法。当我们已经定义了额外的“lol”时,为什么需要它。如果出于某种原因,额外的lol不存在,那么lol=0。这样它就有了一个默认值,而且它不仅仅是不存在的。如果你确信总是有额外的“lol”,那么这是没有用的,但前提是你确信这一点。