2017-08-07 12 views
1

私が試した:DelphiでAndroidアプリを最小限に抑える方法は?

procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word; var KeyChar: Char; 
    Shift: TShiftState); 
begin 
if Key = vkHardwareBack then begin 
Key := 0; 
Form1.WindowState := TWindowState.wsMinimized; // Also tried Application.MainForm 
end; 
end; 

をしかし、あなたはアプリを閉じて二度目を打つときに画面が、黒取得する最初の時間を打ったとき。これを避ける方法は?

+0

よく質問されています!キーボードが表示されているときに、試用コードに1つの余分な条件がありませんでした。 – Victoria

+0

@Victoria私はこのコードを例として使用しました。実際のコードにはvkHardwareBackが押されたときのいくつかの条件があります。 –

答えて

4

あなたのアプリを最小限に抑えようとするのではなく、アンドロイドの方法はデスクトップに切り替えることです。これを達成するには、少なくとも2つの方法があります。

MainActivity.movetasktoback(true); 

を第二の可能性がある:

var 
    Intent: JIntent; 
begin 
    Intent := TJIntent.Create; 
    Intent.setAction(TJIntent.JavaClass.ACTION_MAIN); 
    Intent.addCategory(TJIntent.JavaClass.CATEGORY_HOME); 
    tandroidhelper.activity.startActivity(Intent); 

私はデルファイの下で両方の方法を導くように見えるかということに気づいしかし

第1の可能性は、呼び出すことです再起動すると黒い画面のアプリに

+0

私はAndroid 5 Lollipopで2番目の方法をテストしましたが、黒い画面は表示されませんでした。 –

関連する問題