Activation is the process of switching or linking to a view. When the new view is activated, the old view is deactivated, and the new view is marked as the current view. Applications can have only a single view active at any given point of time. The current active view is the view that interacts with the user and receives events and menu choices.
Activation of a view is done using any of the following methods:
View activation without custom message.
CCoeAppUi::ActivateViewL( TVwsViewId& aViewId )
View activation with custom message.
CCoeAppUi::ActivateViewL( TVwsViewId& aViewId TUid aCustomMessageId, TDesC8& CustomMessage )
Note: Deactivation of view is necessary before exiting from the application, if the application UI has an active view. This can be done using the
CCoeAppUi::DeactivateActiveViewL(
)
function.The following code snippet shows activating a view:
void CNewAppUi::ActivateViewL(const TVwsViewId& aViewId,TUid aCustomMessageId,const TDesC16& aCustomMessage) { HBufC8* narrowMessage = HBufC8::NewLC( aCustomMessage.Size() ); TPtr8 ptr=narrowMessage->Des(); ptr.Copy( ( TUint8* )aCustomMessage.Ptr(), aCustomMessage.Size() ); CCoeAppUi::ActivateViewL( aViewId,aCustomMessageId,narrowMessage->Des() ); iCCoeAppUi->NotifyNextActivation( *iViewActivationObserver_Notify ); CleanupStack::PopAndDestroy( narrowMessage ); }