Adobe
产品
Acrobat
Creative Cloud
创意套装
Digital Marketing Suite
Digital Publishing Suite
Elements
Photoshop
Touch Apps
更多产品
解决方案
数字营销
数字媒体
教育
金融服务业
政府部门
网页体验管理
更多解决方案
学习帮助下载公司
商店
在线商店
批量许可
查找经销商
搜索
 
信息 登录
欢迎,我的支持
我的帐户
注销
为何登录?登录后可以管理您的帐户,访问试用版下载、产品扩展和社区区域等。
Adobe
产品 分类 购买   搜索  
解決方案 公司
学习
登录 注销 我的货物 我的支持
Date Date
Qty:
Subtotal
Checkout
Adobe 开发者中心 / Adobe AIR 开发人员中心 / AIR Quick Starts for ActionScript developers /

使用StageWebView类

作者 Sunil Bhaskaran

Sunil Bhaskaran

Content

  • 创建StageWebView
  • 管理浏览历史
  • 处理StageWebView事件
  • 进一步学习

已修改

10 October 2011

页面工具

在 Facebook 上共享
在 Twitter 上共享
在 LinkedIn 上共享
书签
打印

Tags

要求

必备知识

熟悉 ActionScript 3.

用户级别

中级

必需产品

  • Flash Builder 4 (Download trial)
  • Flash Professional CS5 (Download trial)

范例文件

  • StageWebViewTest.zip
  • StageWebViewTest-android-apk.zip

Adobe AIR里的类StageWebView 是用来在移动Adobe AIR应用上显示HTML内容的。它使用移动手机操作系统提供的系统web控件。因此,不同手机的可用特性和外观渲染可能不一样。在ActionScript 与HTML内容之间,StageWebView只提供了有限的互动。

通过本篇,将学到:

  • 怎样创建StageWebView对象
  • 怎样管理浏览记录
  • 怎样处理 StageWebView 事件

创建StageWebView

使用下面的代码来创建一个StageWebView对象。这段代码创建了StageWebView类的一个实例并用stage属性将其添加到场景中。注意StageWebView并不是一个可以添加到显示列表的显示对象。你可以通过viewPort方法来调整StageWebView中显示HTML内容的矩形区域大小。

public var webView:StageWebView = new StageWebView(); webView.stage = this.stage; webView.viewPort = new Rectangle( 0, 0, stage.stageWidth, stage.stageHeight);

假设你通过点击按钮来将网页(比如:http://www.Google.com)显示在StageWebView对象中。你可以在StageWebView外部添加一个按钮,并且加上监听器,然后调用一个函数来设置地址。比如,下面这个函数在执行时会将Google页面加载到StageWebView中。loadURL()方法是用于在WebView类中加载URL。

public function goGoogle(event:MouseEvent):void { webView.loadURL("http://www.google.com"); }

管理浏览历史

当你开始浏览网页后,访问过的页面会存储在浏览历史中。你可以调用historyBack()方法来转移到浏览历史中的前一页面(如果存在的话)。比如,在按钮上加上鼠标事件监听,你就可以调用下面的函数。如果存在上一个浏览的页面,isHistoryBackEnabled属性的值是true。

public function moveBack(event:MouseEvent):void { if(webView.isHistoryBackEnabled) { webView.historyBack(); } else { trace("No pages in the browsing history.") } }

同样,historyForward方法允许你切换到浏览历史中的下一个页面。如果浏览历史里存在下一页,webView.isHistoryForwardEnabled属性值为true。

public function moveForward(event:MouseEvent):void { if(webView.isHistoryForwardEnabled) { webView.historyBack(); } else { trace("No pages in the browsing history.") } }

处理StageWebView事件

当你使用StageWebView对象时,你可能会想知道新的URL什么时候加载的。监听locationChange事件来响应URL的改变。下面的代码给StageWebView对象添加了一个事件监听。当新的URL加载时,事件监听器会发送一个LocationChangeEvent.LOCATION_CHANGE事件。

webView.addEventListener(LocationChangeEvent.LOCATION_CHANGE,getUpdate); public function getUpdate(event:LocationChangeEvent):void { trace("The location changed."); }

LocationChangeEvent.LOCATION_CHANGING事件标志着StageWebView地址的变化。你可以用preventDefault()方法来阻止默认行为。以下代码在StageWebView对象改变时发送LocationChangeEvent.LOCATION_CHANGING事件并且同时阻止加载新的URL。

webView.addEventListener(LocationChangeEvent.LOCATION_CHANGING,getUpdate); public function getUpdate(event:LocationChangeEvent):void { event.preventDefault(); trace("The new URL is blocked."); }

进一步学习

在本文中,你学习了StageWebView及其相关事件,想要获得更多信息可以参考一下资源:

  • ActionScript 3 Reference for Adobe Flash Platform
  • ActionScript 3 Developers Guide

More Like This

  • Capturing video input in a mobile AIR application
  • 在手机应用程序上使用tel: and sms: URI
  • 捕捉软键输入

产品

  • Acrobat
  • Creative Cloud
  • Creative Suite
  • Digital Marketing Suite
  • Digital Publishing Suite
  • Elements
  • 移动应用程序
  • Photoshop
  • Touch Apps

解决方案

  • 数字营销
  • 数字媒体
  • 网页体验管理

行业

  • 教育
  • 金融服务业
  • 政府部门

帮助

  • 产品帮助中心
  • 订货和退货
  • 下载和安装
  • 我的 Adobe

学习

  • Adobe 开发人员连接
  • Adobe TV
  • 培训和认证
  • 论坛
  • 设计中心

购买方式

  • 在线商店
  • 批量许可
  • 查找经销商

下载

  • Adobe Reader
  • Adobe Flash Player
  • Adobe AIR
  • Adobe Shockwave Player

公司

  • 新闻编辑室
  • 合作伙伴计划
  • 公司社会责任
  • 工作机会
  • 投资者关系
  • 事件
  • 法律
  • 安全
  • 联系 Adobe
选择您的地区 中国(更改)
选择您的地区 关闭

North America

Europe, Middle East and Africa

Asia Pacific

  • Canada - English
  • Canada - Français
  • Latinoamérica
  • México
  • United States

South America

  • Brasil
  • Africa - English
  • Österreich - Deutsch
  • Belgium - English
  • Belgique - Français
  • België - Nederlands
  • България
  • Hrvatska
  • Česká republika
  • Danmark
  • Eastern Europe - English
  • Eesti
  • Suomi
  • France
  • Deutschland
  • Magyarország
  • Ireland
  • Israel - English
  • ישראל - עברית
  • Italia
  • Latvija
  • Lietuva
  • Luxembourg - Deutsch
  • Luxembourg - English
  • Luxembourg - Français
  • الشرق الأوسط وشمال أفريقيا - اللغة العربية
  • Middle East and North Africa - English
  • Moyen-Orient et Afrique du Nord - Français
  • Nederland
  • Norge
  • Polska
  • Portugal
  • România
  • Россия
  • Srbija
  • Slovensko
  • Slovenija
  • España
  • Sverige
  • Schweiz - Deutsch
  • Suisse - Français
  • Svizzera - Italiano
  • Türkiye
  • Україна
  • United Kingdom
  • Australia
  • 中国
  • 中國香港特別行政區
  • Hong Kong S.A.R. of China
  • India - English
  • 日本
  • 한국
  • New Zealand
  • 台灣

Southeast Asia

  • Includes Indonesia, Malaysia, Philippines, Singapore, Thailand, and Vietnam - English

Copyright © 2012 Adobe Systems Incorporated. All rights reserved.

使用条款 | 隐私政策和 Cookies (更新)

京 ICP 备 10217899 号 京公网安备 110105010404