首 页 | 新 闻 | Symbian | Android| Windows Mobile | J2ME | 下载中心 | 游戏策划招聘与求职 | 购书指南 | 视频教程
您现在的位置: 开发视界 >> Symbian >> 多媒体 >> 正文
解决focus返回程序时丢失按键声音
作者:hoolee    文章来源:Forum.Nokia.com    更新时间:2005-12-9 15:30:23
我们的程序会启动外部应用,但当程序返回时,本应有的键盘声音却丢失了。尽管启动的外部程序已綺关闭了。这里说的外部程序包括camera, video, messages, 及 agenda。只有当程序关闭再进入时才能听到按键声音。
概述
根据这个情况,应由CAknKeySoundSystem负责发声。它的BringToForeground()方法可以通知server客户端已回到前台中,这时context stack将用来处理声音。

这是在CAknAppUi中调用的:
Code:
void CAknAppUi::HandleForegroundEventL(TBool aForeground)
{
  if (iKeySounds && aForeground)
     {
     iKeySounds->BringToForeground();
      }
  CEikAppUi::HandleForegroundEventL(aForeground);
}
解决方案
当你使用Nokia论坛所提供的Utilizing External Application方法在应用程序间来回切换时,应该确定你调用了
CAknAppUi::HandleForegroundEventL(aForeground);
在你的重载中要完成HandleForegroundEventL()的调用,否则按键声音将丢失。
如:
Code:
void CMyViewAppUi::HandleForegroundEventL(TBool aForeground)
{
CAknAppUi::HandleForegroundEventL(aForeground);
... // Application-specific code on Focus change
}
相关文章:
程序在后台时获得按键输入
在Symbian程序中使用汇编代码
容器控制方法
在Avkon Tab上如何设置SVG图标
如何创建sis文件——PKG文件格式
如何改变CEikLabel的颜色
通过Tuny Engine Lite 使你的手机游戏更加负有激情
创建Log文件调试Symbian程序
 

站点地图 | 加入收藏 | 联系站长 | 广告服务 |
QQ:280529124  Tel:0592-8271361 辽ICP备05021703号