Namespaces

Variants
Actions

Please note that as of October 24, 2014, the Nokia Developer Wiki will no longer be accepting user contributions, including new entries, edits and comments, as we begin transitioning to our new home, in the Windows Phone Development Wiki. We plan to move over the majority of the existing entries over the next few weeks. Thanks for all your past and future contributions.

在\private目录下存储应用程序图片文件

From Wiki
Jump to: navigation, search
Article Metadata

兼容于
平台: S60 3rd Edition

文章
huwell 在 27 Jun 2007 创建
最后由 hamishwillee 在 30 May 2013 编辑
* 设备, 软件 版本:

S60 3rd Edition


  • 说明:

如果图片文件存放在受保护目录下,则在S60第三版上使用AknIconUtils加载图标或图片可能会引发错误。


  • 详细描述:

如果图片文件aFileName存放在一个受保护目录下,如\private\<appUID>\下,则在S60第三版中使用AknIconUitls的下列方法(akniconutils.h)时将会引发错误:

void CreateIconL( CFbsBitmap *&aBitmap, 
CFbsBitmap *&aMask,
const TDesC &aFileName,
TInt aBitmapId,
TInt aMaskId )

这是因为Avkon icon server无法访问存放在保护目录下的文件。


  • 案例重现:

在这种情况下AknIconUtils::CreateIconL()不会引发异常,不管怎么说,aBitmap和aMask参数将不会指向有效位图。如果尝试使用返回的位图将会引发错误异常。

例如,尝试使用AknIconUtils::SetSize()设置位图大小时会引发error -46(KErrPermissionDenied)


  • 解决方案:

不要将文件名传递到CAknIconUtils,程序应当完成max-in类MAknIconFileProvider,以便提供一个打开的文件句柄给Avkon icon server.

CAknIconUtils有一个可供重载的CreateIconL()方法以便接收一个MAknIconFileProvider示例。

这里提供一个完成MAknIconFileProvider 类的示例,请下载S60 Platform: Scalable Screen-Drawing Example

注意:包含应用程序图标的.mbm和.mif文件(会在LOCALISABLE_APP_INFO资源定义中被引用)应该永远安装在\resource\apps\.目录下。

This page was last modified on 30 May 2013, at 04:37.
88 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.

 

Thank you!

We appreciate your feedback.

×