良い一日。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' ここ
他に何をしようとしているのかわかりません!手伝っていただけませんか?