碳化物/Symbian C++ - 更改应用程序图标

4
我正在使用Carbide(刚升级到2.0版本)来开发一个S60第三版应用程序。
我想知道最简单的方法来更改图标(设备菜单上的应用程序图标和主视图左上角的图标),因为我需要以尽可能简单的方式对我的应用程序进行多种不同的皮肤设计。
我尝试过使用.mif文件进行操作,但是一直失败。我有一个用Illustrator制作的44x44的.svg图标,请问有人能帮我指点一下吗?
谢谢!
4个回答

3

如果您想在运行应用时更改应用图标,请使用以下方法(在状态栏中):

CEikStatusPane* sp=iEikonEnv->AppUiFactory()->StatusPane();
CAknContextPane* cp=(CAknContextPane *)sp->ControlL(TUid::Uid(EEikStatusPaneUidContext));
_LIT(KContextBitMapFile, "my_bitmap_file.mbm");
CFbsBitmap* bitmap = iEikonEnv->CreateBitmapL(KContextBitMapFile, EMbmBitmap);
CleanupStack::PushL(bitmap);
CFbsBitmap*  bitmapmask = iEikonEnv->CreateBitmapL(KContextBitMapFile, EMbmBitmapMask);
CleanupStack::PushL(bitmapmask);
cp->SetPicture(bitmap, bitmapmask);
CleanupStack::Pop(); // bitmapmask
CleanupStack::Pop(); // bitmap
DrawNow();

我不知道除了使用不同的mif文件重新安装应用程序以外,是否有任何在菜单列表中通过编程来更改应用程序图标的可能性。

1

如果您想更改SIS文件中的图标,然后在设备上进行覆盖安装,则可能需要在安装后重新启动设备 - 应用程序图标位于Symbian缓存中,不会更新。



0

使用最新的QMake和Qt SDK(4.6.2),您无需自己创建任何.mif文件。一个SVG文件就可以了。

有关更详细的说明,请参见:如何在Symbian S60中设置Qt应用程序图标和标题

尽管该文章使用了Qt Creator,但只要您使用QMake,那么它就是一样的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接