问题
我需要从浏览器的 URL 传递数据给 Flex 控件,并且根据 Flex 应用程序里的数据更新浏览
器 URL 的值,同时执行浏览器的前进或后退导航按钮。
解决办法
使用 BrowserManager 类和 BrowserChangeEvents 读取并写入数据到浏览器 URL。
讨论
无论是通过地址栏的输入框还是还是通过使用导航控件(前进和后退按钮)来改变浏览器
URL 的值,BrowserManager 实例都会广播一个
BrowserChangeEvent.BROWSER_URL_CHANGE 事件。无论何时,只要该类型的事件发生,
你都可以简单地调用 updateValues 方法更新 Flex 控件的属性值。这让你可以轻易地链接、
循环到你的输入值。
下面的例子展示如何从浏览器 URL 里读取数据并将读取的值放入 Flex mx:TextInput 的属性
域里面去。当示例程序加载的时候,它会从当前 URL 里读取数据并且将 firstName 和 lastName
参数值写入文本框中去。无论是 firstName 还是 lastName 值的 mx:TextInput 属性域改变的时
候,应用程序将在浏览器管理器调用 setFragment 方法,使用新的 firstName 和 lastName 参
数值更新浏览器的 URL。这让你能够复制粘贴 URL,从而轻易地直接连接到当前视图中去,
同时也将每一个变化添加到浏览器历史记录中。