MAknsSkinInstance::GetCachedItemData() return NuLL
2010-04-14 01:48:00 来源:WEB开发网MAknsSkinInstance::GetCachedItemData() return NuLL
IDTSS000716Creation dateJuly 4, 2007
PlatformS60 3rd Edition
S60 3rd Edition, FP1Devices
CategorySymbian C++SubcategoryUI, Scalable UI
Keywords (APIs, classes, methods, functions):
Overview
Why does MAknsSkinInstance::GetCachedItemData() return NULL?
Description
The skin server in S60 provides a way to construct a bitmap (CFbsBitmap) of default skin elements.
The bitmap is typically obtained from the skin as follows:
#include
MAknsSkinInstance* skin = AknsUtils::SkinInstance();
CAknsItemData* skinItem = skin->GetCachedItemData( someUID, EAknsITBitmap );
if( skinItem != NULL )
{
CFbsBitmap* bitmap =
static_cast
}
The above approach works fine for skin items that are bitmaps (EAknsITBitmap) or masked bitmaps (EAknsITMaskedBitmap). However, this is not true for all skin items. For example, if someUID in the above code is set to one of the following values:
KAknsIIDQsnBgAreaMainIdle,
KAknsIIDQsnBgScreenIdle,
KAknsIIDQsnBgScreen
GetCachedItemData() would return NULL as these UIDs do not correspond to bitmaps, but to items of type EAknsITEffectQueue.
If a skinnable element in a theme is of type EAknsITEffectQueue, it means that the item supports effects. Effects are one of the main features of scalable UI. When a skin item supports effects, it means that the item can have multiple layers. Each layer can be an image or it can be image/pixel manipulation scheme that acts on previous layer(s). The effects may be programmed to change over time, and even the first (background) layer can refer to another skin
Tags:MAknsSkinInstance GetCachedItemData return
编辑录入:coldstar [复制链接] [打 印]更多精彩
赞助商链接