下面是一个用Venus写的锁屏界面效果图:
如何用Venus写一Screen:
1、创建一个Screen Class
A、首先要在相应的路劲下创建头文件:venusmmi/app/XXX/vapp_XXX_scr.h ,
该头文件中要包含#include "vfx_uc_include.h"和#include "vcp_include.h";
B、在头文件目录下创建vapp_XXX_scr.cpp文件
C、在该头文件中创建新的Screen Class
- class VappXxxScr:public VcpAppScr //继承的类根据你的需求而定
- {
- public:
- VappXxxScr();//构造函数 可以有多个构造函数
- public:
- virtual void onInit();//初始化函数 在创建对象时 会执行 用于显示Screen
- virtual void onDeinit();//相当于析构函数 在退出该屏幕前执行 用来做“清理善后” 的工作
- }
D、在vapp_XXX_scr.cpp中定义相应的函数
- void VappXxxScr::onInit()
- {
- VfxImageFrame* m_Image;
- //Init VcpAppScr first
- VcpAppScr::onInit();
- //下面就可以开始进行自己的工作了,比如可以画张图片
- VFX_OBJ_CREATE(m_Image, VfxImageFrame, this);//创建一个VfxImageFrame对象
- m_Image->setResId(VAPP_SHELL_IMG_XXX);
- m_Image->setSize(MAIN_LCD_DEVICE_WIDTH, MAIN_LCD_DEVICE_HEIGHT);
- m_Image->setPos(0, 0);
- }
- void VappXxxScr::onDeinit()
- {
- VcpAppScr::onDeinit();//必须的
- }
2、Connect to Pluto MMI
在创建了Screen Class之后,那么下面我们就要有被Pluto MMI调用的相关接口,这样pluto才可以利用
我们的Screen
A、首先新建venusmmi/pluto_adapter/XXX/vadp_p2v_XXX.cpp
venusmmi/pluto_adapter/XXX/vadp_p2v_XXX.h
- static VappXxxScr *g_vadp_p2v_Xxx_ptr;
- void vadp_p2v_Xxx_init ()
- {
- // Init VcpAppScr first
- VcpAppScr::initalize ();
- // Create application screen
- VFX_OBJ_CREATE(g_vadp_p2v_Xxx_ptr, VappXxxScr, VcpAppScr::getContext());
- };
- void vadp_p2v_Xxx_deinit ()
- {
- // Close application screen
- VFX_OBJ_CLOSE(g_vadp_p2v_Xxx_ptr);
- // Deinit VcpAppScr first
- VcpAppScr::deinitalize ();
- };
3、最后记得要在make/venusmmi下加入相应的路径