我现在有两个窗口 B窗口弄了一个 组件 网页浏览框1 网页浏览框1.接口事件被回调 会有返回数据
我A窗口 如果实时的读取这个 B窗口的 网页浏览框1.接口事件被回调 数据 目前我弄的是 写 保存设置在目录下 A窗口去读取目录下的设置 但是有时候又误差 有更好的方法吗?
轻语言安卓框架遵循原生安卓生命周期,B窗口看不见的时候,或当关闭的时候,B窗口将会从栈堆移除并释放相关内存资源,因此当切换到A窗口时,B窗口在后台已经释放了窗口中相关组件资源及事件。
如果您要在整个APP运行期内,都要能监听到浏览框事件,可以新建一个模块,然后在模块中以静态方式封装浏览框、然后动态注册浏览框的相关事件;例如:
' 定义一个全局静态网页浏览框组件
变量 静态 网页浏览框1 为 网页浏览框
' 开始监听、并传入网站地址
函数 静态 开始监听(URL 为 文本型)
如果(网页浏览框1 == 空)
网页浏览框1 = 创建 网页浏览框()
结束 如果
网页浏览框1.置接口事件被回调回调((源对象,回调信息)->{
调试输出("网页浏览框接口事件被回调:" + 回调信息)
})
网页浏览框1.加载(URL)
结束 函数
在启动窗口创建或需要监听场景的时候,通过模块名称调用:开始监听 函数。
好的 感谢指导 我试试
实现了 但是我切换到不是浏览器的A窗口 B窗口的浏览器的 网页浏览框1.接口事件被回调 好像已经失效了了
轻语言安卓框架遵循原生安卓生命周期,B窗口看不见的时候,或当关闭的时候,B窗口将会从栈堆移除并释放相关内存资源,因此当切换到A窗口时,B窗口在后台已经释放了窗口中相关组件资源及事件。
如果您要在整个APP运行期内,都要能监听到浏览框事件,可以新建一个模块,然后在模块中以静态方式封装浏览框、然后动态注册浏览框的相关事件;例如:
' 定义一个全局静态网页浏览框组件
变量 静态 网页浏览框1 为 网页浏览框
' 开始监听、并传入网站地址
函数 静态 开始监听(URL 为 文本型)
如果(网页浏览框1 == 空)
网页浏览框1 = 创建 网页浏览框()
结束 如果
网页浏览框1.置接口事件被回调回调((源对象,回调信息)->{
调试输出("网页浏览框接口事件被回调:" + 回调信息)
})
网页浏览框1.加载(URL)
结束 函数
在启动窗口创建或需要监听场景的时候,通过模块名称调用:开始监听 函数。
不用,只要在其它地方发送之前注册接收都可以。
实现了 但是我切换到不是浏览器的A窗口 B窗口的浏览器的 网页浏览框1.接口事件被回调 好像已经失效了了
这个 接收事情 必须在 窗口创建完毕 是么
不用,只要在其它地方发送之前注册接收都可以。
使用 发送事件消息,与 接收事件消息函数 可以跨窗口实时传递数据。
参考例程:跨窗口传递数据
代码示例:
窗口1
发送事件消息(1,"我是实时传递的数据")
窗口2,在窗口创建完毕事件中接收事件消息:
接收事件消息((消息ID,消息值)->{
标签1.追加文本行("消息ID:" + 消息ID + ",消息值:" + 消息值)
})
这个 接收事情 必须在 窗口创建完毕 是么
使用 发送事件消息,与 接收事件消息函数 可以跨窗口实时传递数据。
参考例程:跨窗口传递数据
代码示例:
窗口1
发送事件消息(1,"我是实时传递的数据")
窗口2,在窗口创建完毕事件中接收事件消息:
接收事件消息((消息ID,消息值)->{
标签1.追加文本行("消息ID:" + 消息ID + ",消息值:" + 消息值)
})