深入探索Symbian多视图程序开发
2010-06-22 03:03:00 来源:WEB开发网* @return TUid uid of the view
*/
TUid Id() const;
// UID of view
const TUid KViewId = {1};
/**
* From CAknView returns Uid of View
* @return TUid uid of the view
*/
TUid Id() const;
那么从一个View跳转到另一个View就需要下面的代码
view plaincopy to clipboardprint?
((CAknViewAppUi*)(iEikonEnv->AppUi()))->ActivateLocalViewL( TUid::Uid( 3 ));或
static_cast
((CAknViewAppUi*)(iEikonEnv->AppUi()))->ActivateLocalViewL( TUid::Uid( 3 ));或
static_cast
上面的代码讲述了AppUI如何管理众多的View以及View之间的切换,那么下面讲述每个View是如何管理它里面众多的Containers的。
首先要明白View继承自CAknView,它做为Container(继承自CCoeControl)的容器通过以下的代码激活某个Container
view plaincopy to clipboardprint?
iContainer = new (ELeave) CApplicationContainerSetting;
iContainer->ConstructL( KFullScreen );
iContainer->SetMopParent(this);
iContainer->SetObserver(this);
iContainer->SetApplicationDbEngine(iDbEngine);
AppUi()->AddToStackL( *this, iContainer );
iContainer = new (ELeave) CApplicationContainerSetting;
iContainer->ConstructL( KFullScreen );
iContainer->SetMopParent(this);
iContainer->SetObserver(this);
iContainer->SetApplicationDbEngine(iDbEngine);
AppUi()->AddToStackL( *this, iContainer );
那么在DoActivateL()中通过以上代码放置初始显示的Container。
那么View是如何管理众多的Container的呢?
从以上代码可以看出,负责Container管理的View都继承自MCoeControlObserver,而
- ››深入理解JAR包
- ››探索 ConcurrentHashMap 高并发性的实现机制
- ››深入分析Volatile的实现原理
- ››深入理解Flash Player的应用程序域(Application ...
- ››深入理解flash函数(AS2)
- ››Symbian S60 SocketConnection参数
- ››Symbian乏力:2010年诺基亚悲情大事记
- ››Symbian三大升级开启2011年新战略
- ››Symbian/Android/iOS/WM安装包对比
- ››Symbian一个活动对象的测试例子
- ››Symbian ListBox控件
- ››Symbian下自动切换SDK的批处理代码
更多精彩
赞助商链接