Join Now
Quality Rating:
  • Currently 0.0 / 5
(0.0 / 5 - 0 votes cast)
Expertise Level:
  • Currently 0.0 / 5
(0.0 / 5 - 0 votes cast)

This page was last modified 18:57, 25 November 2007.

Управление индикатором вызова

From Forum Nokia Wiki

Индикатор вызова - иконка (иногда мерцающая, см. рис.), появляющаяся в правом верхнем углу экрана в том случае, если телефон не может отобразить полноценное окно вызова.

Image:IncomingCallBubbleIcons.jpg

Различные индикаторы вызова.

Во 2-й редакции Symbian вы можете отобразить или скрыть этот индикатор, не зависимо от того, имеется ли входящий звонок или нет. Для этого вы должны воспользоваться классом CAknIncallBubble из aknnotify.lib. Заголовок для этого класса в SDK не включен, но используемое им перечисление TAvkonIncallStatusBubbleFlags доступно в avkon.hrh, а сам класс по структуре очень прост и полностью соответствует CAknPopupNotify, так что воссоздать его заголовочный файл не составляет большого труда.


Файл AknIncallBubble.h

// INCLUDES
#include <e32std.h>
#include <e32base.h>
#include <AknNotify.h>
 
 
    /*  CAknIncallBubble flags
    *   Bit             Explanation
    *   0 and 1         Call state
    *   2               No Ciphering
    *   3               Is muted
    *   4               Is Visible
    *   5               Is a Fax
    *   6               Is a Data call
    *   7               Is a Hscsd data call
    *   8               Line 2 indication
    *   9               Is a Video call
    *   10              Is an emergency call
    */
 
/* Следующее перечисление можно найти в avkon.hrh:
 
 enum TAvkonIncallStatusBubbleFlags
    {
    EAknStatusBubbleAlerting     = 0x00, //  One of
    EAknStatusBubbleActive       = 0x01, //  these
    EAknStatusBubbleOnHold       = 0x02, //  to set
    EAknStatusBubbleDisconnected = 0x03, //  the call state
    EAknStatusBubbleNoCiphering  = 0x04,
    EAknStatusBubbleMuted        = 0x08,
    EAknStatusBubbleVisible      = 0x10,
    EAknStatusBubbleFax      = 0x20,
    EAknStatusBubbleData      = 0x40,
    EAknStatusBubbleDataHscsd      = 0x80,
    EAknStatusBubbleLine2      = 0x100,
    EAknStatusBubbleVideo      = 0x200,
    EAknStatusBubbleEmergency  = 0x400
    };
*/
 
 
// CLASS DECLARATION
 
/**
*  CAknIncallBubble
* 
*/
class CAknIncallBubble : public CBase
{
public: // Constructors and destructor
 
IMPORT_C static CAknIncallBubble* NewL();
IMPORT_C static CAknIncallBubble* NewLC();
IMPORT_C ~CAknIncallBubble();
 
IMPORT_C void SetIncallBubbleFlagsL(int aMessage);
 
private:
		CAknIncallBubble();
		void ConstructL();
 
IMPORT_C void CAknNotifyBase_Reserved();
 
};

Использование CAknIncallBubble

Подключите AknIncallBubble.h к своему проекту, и используйте следующий код:

CAknIncallBubble* IncallBubble = CAknIncallBubble::NewLC();
IncallBubble->->SetIncallBubbleFlagsL(EAknStatusBubbleVisible | EAknStatusBubbleAlerting);
CleanupStack::PopAndDestroy(IncallBubble);

Демонстрационный проект

Image:IncallBubbleSample.jpg

Здесь находится демонстрационный проект, позволяющий поэксперементировать с различными флагами CAknIncallBubble.

Related Discussions
Thread Thread Starter Forum Replies Last Post
Оффтоп Cagemts Russian Developer Forum - Форум Российских разработчиков 115 2008-07-28 13:06
Считывание входящих смс в онлайн режиме (желательно незаметно для пользователя) GenSoft Russian Developer Forum - Форум Российских разработчиков 22 2008-04-27 14:01
we want devcert's with allfiles and TCB! Santehnik Symbian Signing, Certification and Security 90 2007-02-16 18:09
RSendAsMessage - передача файлов по Bluetooth Den123 Russian Developer Forum - Форум Российских разработчиков 2 2008-03-06 17:28
Отслеживание событий журнала звонков Den123 Russian Developer Forum - Форум Российских разработчиков 2 2008-03-11 06:09
 
Powered by MediaWiki
     
     RDF Facets:
     
     
     qfnZtypeQUqfnTypeZCommunityContentQ
     qfnZtypeQUqfnTypeZWebpageQ
     qfnZtypeQUqfnTypeZWikiContentQ
     qmarsZlanguageQUxhttpE3aE2fE2fswE2enokiaE2ecomE2flanguageE2d1E2fenX