HarmonyOS 鸿蒙Next 页面点击按钮后pop返回并回调数据到上一个页面 怎么实现 麻烦给出具体代码
HarmonyOS 鸿蒙Next 页面点击按钮后pop返回并回调数据到上一个页面 怎么实现 麻烦给出具体代码
页面点击按钮后pop返回,并回调数据到上一个页面,怎么实现,麻烦给出具体代码
3 回复
// 1.声明一个class
export class TmpClass {
count: number = 10
callBack:(e:number)=>void = ()=>{}
}
...
// 2.点击事件传值,callBack 既是回调
.onClick(() => {
let tmp = new TmpClass()
tmp.callBack = (e)=>{
console.log(e.toString())
}
this.pageInfos.pushPathByName('pageTwo', tmp)
...
// 3. pageTwo页面 需要回传的时候 调用即可
let temp:TmpClass = this.pathStack.getParamByName('pageTwo')[0] as TmpClass
temp.callBack(23456)
更多关于HarmonyOS 鸿蒙Next 页面点击按钮后pop返回并回调数据到上一个页面 怎么实现 麻烦给出具体代码的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS鸿蒙系统中,实现页面点击按钮后pop返回并回调数据到上一个页面,可以通过使用Intent和回调机制来完成。以下是一个简化的示例代码:
当前页面(发送数据页面)代码:
// 假设按钮点击事件处理函数
public void onButtonClick(Component component) {
Intent intent = new Intent();
// 假设要传递的数据是一个字符串
intent.putElement(new StringElement("key", "要传递的数据"));
// 结束当前页面并携带数据返回
this.$ability.terminateAbilityWithResult(intent, 0);
}
上一个页面(接收数据页面)代码:
// 在onAbilityResult中接收数据
@Override
protected void onAbilityResult(int requestCode, int resultCode, Intent resultData) {
super.onAbilityResult(requestCode, resultCode, resultData);
if (resultData != null) {
StringElement element = resultData.getElementByString("key");
if (element != null) {
String receivedData = element.getValue();
// 处理接收到的数据
}
}
}
上述代码展示了如何在点击按钮后,通过Intent携带数据返回到上一个页面,并在上一个页面中接收并处理这些数据。
如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html