使用Intent在活动之间穿梭(《第一行代码》读书笔记)
以下全是个人理解//瞎扯
其实活动理解理解起来就像一个个函数
那么Intent就是调用函数和参数传递
可以有无参,仅仅是调用
Intent intent = new Intent(A.this, B.class); startActivity(intent);
由活动A调用活动B,无参,无返回值,当然B调用结束,要回到A。
可以有参数
A
---
Intent intent = new Intent(A.this, B.class); intent.putExtra( "这里是参数的键" , "这里是参数,本样例是字符串,也可以是其他的类型" ); // 传参 startActivity(intent);
B
--- Intent intent = getIntent(); String data = intent.getStringExtra("这里是参数的键"); //取出参数
由活动A调用活动B,无参,无返回值。
可以传参当然也可以返回参数
A --- Intent intent = new Intent(A.this, B.class); startActivity(intent, 1); //1是请求码,要求唯一 @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { // 接收返回的值 switch(requestCode) { //请求码是唯一的 case 1: if (resultCode == RESULT_OK) { String returnData = data.getStringExtra("data_return"); } break; dafault: } } B --- Intent intent = getIntent(); intent.putExtra("data_return", "hey~"); setResult(RESULT_OK/RESULT_CANCELED, intent);
其实吧 可以把活动间通信想象成两地用信鸽传信,而Intent就是那个信鸽。
信鸽可以不带消息,就只是一个鸽子,也可以在腿上绑上信,放信鸽的人和收信鸽的利用鸽子放信的姿势当然是一样的啦。
但是可能有很多鸽子,所以如果鸽子传信回来,一定要看看,是不是自己的鸽子,于是给鸽子编个号,防止认错。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架