Activity的跳转及返回值 的四种方法

Activity的跳转及返回值的四种方法:

在Android应用程序中Activity作为最基础的组件, Activity之间的跳转是非常常见的操作, 为了实现跳转我们通常要使用startActivity、startActivityForResult、setResult等方法。

1. startActivity(Intent intent)跳转

调用startActivity(Intent intent)方法可以实现跳转。该方法的参数intent为跳转到目标Activity的Intent对象。下面是一个示例:

```

Intent intent = new Intent(MainActivity.this, SecondActivity.class);

startActivity(intent);

```

在该示例中,我们创建了一个Intent对象,指定了目标Activity(SecondActivity),并使用startActivity(intent)方法启动了目标Activity。

2. startActivityForResult(Intent intent, int requestCode)跳转

调用startActivityForResult(Intent intent, int requestCode)方法也可以实现跳转。该方法的参数intent为跳转到目标Activity的Intent对象,requestCode为请求代码,用于标识返回结果的来源。下面是一个示例:

```

Intent intent = new Intent(MainActivity.this, SecondActivity.class);

startActivityForResult(intent, 1);

```

在该示例中,我们创建了一个Intent对象,指定了目标Activity(SecondActivity),并使用startActivityForResult(intent, 1)方法启动了目标Activity,并指定请求代码为1。

当目标Activity关闭时,会回调当前Activity的onActivityResult(int requestCode, int resultCode, Intent data)方法,我们可以在该方法中获取目标Activity返回的结果。

3. setResult(int resultCode, Intent data)设置返回值

在目标Activity中,调用setResult(int resultCode, Intent data)方法可以设置返回值。resultCode表示返回结果的状态,data为包含返回结果的Intent对象。下面是一个示例:

```

Intent intent = new Intent();

intent.putExtra("name", "Tom");

setResult(RESULT_OK, intent);

finish();

```

在该示例中,我们创建了一个Intent对象,设置了返回值为"Tom",并使用setResult(RESULT_OK, intent)方法设置了resultCode为RESULT_OK,data为我们创建的Intent对象。最后,我们调用了finish()方法关闭目标Activity。

4. onActivityResult(int requestCode, int resultCode, Intent data)获取返回值

在当前Activity中,我们可以通过重写onActivityResult(int requestCode, int resultCode, Intent data)方法获取目标Activity返回的结果。requestCode为在启动目标Activity时指定的请求代码,resultCode为目标Activity返回的状态码,data为包含返回结果的Intent对象。下面是一个示例:

```

@Override

protected void onActivityResult(int requestCode, int resultCode, Intent data) {

super.onActivityResult(requestCode, resultCode, data);

if (resultCode == RESULT_OK && requestCode == 1) {

String name = data.getStringExtra("name");

Toast.makeText(MainActivity.this, "返回值:" + name, Toast.LENGTH_LONG).show();

}

}

```

在该示例中,我们重写了onActivityResult(int requestCode, int resultCode, Intent data)方法,判断返回结果的状态和请求代码,如果requestCode为1且resultCode为RESULT_OK,我们就可以从data中获取返回值,并使用Toast显示在屏幕上。

总结:

以上就是四种跳转及返回值的方法,通过实际操作和代码演示,我们可以学会如何使用这些方法来实现Activity之间的跳转和数据传递。

壹涵网络我们是一家专注于网站建设、企业营销、网站关键词排名、AI内容生成、新媒体营销和短视频营销等业务的公司。我们拥有一支优秀的团队,专门致力于为客户提供优质的服务。

我们致力于为客户提供一站式的互联网营销服务,帮助客户在激烈的市场竞争中获得更大的优势和发展机会!

点赞(58) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿
发表
评论
返回
顶部