Activity之间跳转与传值
浏览量:4074
时间:2024-02-02 11:02:00
作者:采采
在Android开发中,Activity之间的跳转和数据传递是非常常见的操作。本文将介绍如何通过Intent类来实现Activity之间的跳转,并通过Bundle类来进行数据传递。
一、Activity跳转
Activity之间的跳转可以通过Intent类来实现,最常见的跳转代码如下:
Intent intent new Intent(, ); startActivity(intent);
也可以使用以下代码:
Intent intent new Intent(); (, ); startActivity(intent);
二、数据传递
如果需要在跳转页面时传递数据,可以使用Intent的putExtra()方法。如果只需要传递少量数据,可以直接在启动Intent时添加额外的参数:
Intent intent new Intent(); (, ); intent.putExtra("Name", "ppy2790"); startActivity(intent);
如果需要传递大量数据,可以使用Bundle类来封装数据,然后将Bundle对象赋给Intent:
Intent intent new Intent(, ); Bundle bundle new Bundle(); bundle.putString("Name", "ppy2790"); bundle.putBoolean("IsMale", true); intent.putExtras(bundle); startActivity(intent);
三、获取传递的值
在接收数据的另一个Activity中,可以通过getIntent().getExtras()方法获取传递过来的Bundle对象,并从中获取数据:
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(); Bundle bundle ().getExtras(); String name ("Name"); boolean isMale ("IsMale"); }
也可以直接从Intent中获取数据:
String name ().getStringExtra("Name");
四、页面跳转后返回并保留数据
有时候,在页面跳转之后,需要返回到之前的页面,并保留用户之前输入的信息。实现这个效果需要以下几步:
- 从FirstActivity页面跳转到SecondActivity页面时,使用startActivityForResult()方法。
- 在FirstActivity页面中重写onActivityResult()方法,获取来自SecondActivity页面的数据。
- 在SecondActivity页面上加入返回按钮,点击按钮时设置返回结果并结束当前Activity。
// FirstActivity中重写onActivityResult()方法 @Override protected void onActivityResult(int requestCode, int resultCode, Intent data){ switch(requestCode){ case RESULT_OK: // 取得来自SecondActivity页面的数据,并显示到画面 Bundle bundle (); String name ("Name"); boolean isMale ("IsMale"); } } // SecondActivity中返回按钮点击事件 /*给上一个Activity返回结果*/ (RESULT_OK, intent); /*结束本Activity*/ ();
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。
上一篇
如何在C4D中快速更改点触控尺寸
下一篇
美图秀秀如何调整图片的色相红