当前位置:   article > 正文

【FAQ】HarmonyOS JavaUI中使用terminate()后重新打开AbilitySlice页面存在缓存_harmony terminate

harmony terminate

 【前言】

同一个Ability下的两个不同的AbilitySlice,官方给的Java UI中是通过present跳转AbilitySlice,使用AbilitySlice.terminate方法关闭Slice,具体可以参考官方给的示例代码(Samples: We provide a series of app samples to help you quickly get familiar with the APIs and app development process of the HarmonyOS SDKs. | 为帮助开发者快速熟悉HarmonyOS SDK所提供的API和应用开发流程,我们提供了一系列的应用示例 - Gitee.com

【问题描述】

我们遇到的问题是:两个Slice, A 和 B,B中有一个输入框。从A present 跳转到B以后,修改B中的输入框,然后返回A,重新打开B。这个时候B中的输入框并不是初始化的状态,而是上一次被修改的UI。

cke_455.png

【解决方案】

使用使用LayoutScatter动态解析XML文件, 修改onStart中的代码:

  1. @Override
  2. protected void onStart(Intent intent) {
  3. super.onStart(intent);
  4. // super.setUIContent(ohos.samples.pageability.ResourceTable.Layout_first_ability_second_slice);//不直接使用layoutRes xml
  5. super.setUIContent((ComponentContainer) LayoutScatter.getInstance(getContext()).parse(ResourceTable.Layout_first_ability_second_slice, null, false));
  6. //使用LayoutScatter加载xml
  7. HiLog.error(new HiLogLabel(HiLog.LOG_APP, 0, "MY_TAG"), "%{public}s", data+"");
  8. initComponents();
  9. setResult();
  10. }

欲了解更多更全技术文章,欢迎访问https://developer.huawei.com/consumer/cn/forum/?ha_source=zzh

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/article/detail/30287
推荐阅读
相关标签
  

闽ICP备14008679号