Symbian S60アプリケーションでは、[オプション]メニューが期待どおりに機能します。ただし、[終了]ボタンは何もしません。
私はCarbideで開発しており、UIデザイナーを使用してオプションメニューに項目を追加しました。
誰かが終了ボタンを有効にする方法を知っていますか、または他の理由でそれが機能しない可能性がありますか?
ありがとう!
appui::HandleCommandL
コマンドIDEEikCmdExit
とEAknSoftkeyExit?
if ( aCommand == EAknSoftkeyExit || aCommand == EEikCmdExit )
{
Exit();
}
アプリケーションのクラスのHandleCommandL( TInt aCommand )
メソッドの中を調べましたか? AppUi
たとえば、Carbide で作成したすべての UI プロジェクトでは、HandleCommandL()
メソッド内に次のものが自動的に存在します。
void MyAppUi::HandleCommandL( TInt aCommand )
{
TBool commandHandled = False;
switch ( aCommand )
{
default:
break;
}
if ( !commandHandled )
{
if ( aCommand == EAknSoftkeyExit || aCommand == EEikCmdExit )
{
Exit();
}
}
}
どの CBA リソース (ソフトキー ボタン レイアウト) を使用していますか? R_AVKON_OPTIONS_EXIT
? 他の方法で終了コマンドを処理していますか? または、Exit()
通話をトラップしていますか?EEikCmdExit
コードを受け取っていますか?あなたがcommandHandled
ブール値を持っている場合、それはに設定されていEFalse
ますか?
Commands were being handled in my main view
So I changed it to this...
void CMyContainerView::HandleCommandL( TInt aCommand )
{
TBool commandHandled = EFalse;
switch ( aCommand )
{
// ...
default:
break;
}
if ( !commandHandled )
{
AppUi()->HandleCommandL(aCommand);
}
}
Thanks all :)