0

良い一日。Embarcadero Xe8 の C++ Builder で書いています。Ios と Android でモバイル アプリケーション プロジェクトを行っていますが、このような問題に直面しました。電話のロック画面イベントをキャッチできません。私はいつもそうしていました:

    bool TForm1::HandleApp(TApplicationEvent a, TObject *x)
{
    if (a == TApplicationEvent::EnteredBackground)
    {
        MediaPlayer1->Stop();
    }
    return true;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
  _di_IFMXApplicationEventService a;
   if (TPlatformServices::Current->SupportsPlatformService(__uuidof(IFMXApplicationEventService), &a))
   {
    a->SetApplicationEventHandler(TForm1::HandleApp);
   }
}

しかし、エラー:

\Unit1.cpp(33): 'TApplicationEventHandler' 型のパラメーターを初期化できません (別名 'bool (クロージャー *)(Fmx::Platform::TApplicationEvent, System::TObject __borland_class *__strong) __attribute ((pcs("aapcs- vfp")))') 型 'bool (__closure *)(Fmx::Platform::TApplicationEvent, System::TObject __borland_class *__strong)' の左辺値を持つ FMX.Platform.hpp(252): 引数をパラメーター ' に渡しますAEventHandler' ここ

他に何をしようとしているのかわかりません!手伝っていただけませんか?

4

1 に答える 1