news 2026/4/18 12:11:57

android---intent清除所有putExtra()数据

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
android---intent清除所有putExtra()数据
intent.replaceExtras((Bundle) null); // 清除所有extra数据

说是可以清除:

现在来做个实验看看能不能清除:

@Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view=inflater.inflate(R.layout.fragment_test,container,false); Button button=view.findViewById(R.id.button3); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(v.getContext(), MainActivity.class); intent.putExtra("tab","second"); intent.replaceExtras((Bundle) null); intent.addFlags(FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_NEW_DOCUMENT); startActivity(intent); } }); // Inflate the layout for this fragment return view; }

如果能清除就会跳转到第一个界面,清除不了就会跳转到第二个界面:

跳转到了第一个界面,说明确实清除了,但是为了证明是清除了,现在去掉这一句,看是不是会跳转到第二个界面:

Intent intent = new Intent(v.getContext(), MainActivity.class); intent.putExtra("tab","second"); intent.addFlags(FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_NEW_DOCUMENT); startActivity(intent);

非常遗憾,还是跳转到了第一个界面,这说明:是逻辑设计错误,首先需要修复逻辑

我们发现:是getIntent判断位置错误:应该放在onResume里面,而不是oncREATE()

从这2个图片可以看出,这个语句确实清除了intent里面的数据,不用再证明了,已经看到了。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/17 23:24:30

基于Spring Boot的助农扶农系统设计与实现(任务书)

本科毕业论文(设计)任务书 学院:数学与数据科学学院 学生姓名 专业班级 信计与计算科学213班 学号 校内指导教师姓名 职称/职务 副教授 签名 校外指导教师姓名 职称/职务 技术经理 签名 论文题目 基于Spring Boot的助农扶农系统 起始日期 2024-9~2025-5 一、论文(设计)…

作者头像 李华
网站建设 2026/4/18 9:10:45

(新卷,100分)- 多段线数据压缩(Java JS Python C)

(新卷,100分)- 多段线数据压缩(Java & JS & Python & C)题目描述下图中,每个方块代表一个像素,每个像素用其行号和列号表示。为简化处理,多线段的走向只能是水平、竖直、斜向45度。上图中的多线段可以用下…

作者头像 李华
网站建设 2026/4/17 18:02:15

轻量级模型也能高精度?AI手部追踪CPU优化揭秘

轻量级模型也能高精度?AI手部追踪CPU优化揭秘 1. 为什么手部追踪不该被GPU“绑架”? 你有没有试过在一台没装显卡的办公电脑上跑AI手势识别?十有八九会卡在模型加载那一步,或者干脆报错:“CUDA out of memory”。我们…

作者头像 李华