×
Namespaces

Variants
Actions

浏览器控件API的MBrCtlLinkResolver接口无法在S60第五版上工作

From Nokia Developer Wiki
Jump to: navigation, search
Article Metadata

兼容于
平台: S60 5th Edition

文章
翻译:
hoolee
最后由 hamishwillee 在 06 Aug 2012 编辑
  • 详细描述

Browser Control API的MBrCtlLinkResovler接口提供了一个回调机制,用来接收内嵌链接的内容或用户初始化载入请求的内容。但在第五版上,这个接口却无法被调用。

  • 如何重演
  1. 使用Browser Control API加载HTML页面,你可以使用SDK中标准的Browser Control示例。
  2. 点击该HTML页面的任何一个链接

期盼的处理为:在处理这些链接时MBrCtlLinkResolver::ResolveLinkL()和MBrCtlLinkResolver::ResolveEmbeddedLinkL()应该被回调。

实际发生情况为:回调方法没有被执行,页面也没有加载。

  • 解决方案

当生成Browser Control实例时,传递整个屏幕区域到CreateBrowserControlL函数。

void CBrCtlSampleAppContainer::ConstructL(const TRect& aRect)
{
iBrCtlInterface = CreateBrowserControlL(
this,
aRect, // pass the entire screen area.
iBrCtlCapabilities,
iCommandBase,
iBrCtlSampleAppSoftkeysObserver,
iBrCtlSampleAppLinkResolver,
iBrCtlSampleAppSpecialLoadObserver,
iBrCtlSampleAppLayoutObserver,
iBrCtlSampleAppDialogsProvider);

注意:Browser Control实例必须使用ECapabilityClientNotifyURL和ECapabilityClientResolveEmbeddedURL能力初始化,这样回调函数才能正确执行。

This page was last modified on 6 August 2012, at 09:33.
44 page views in the last 30 days.
×