Подходящий способ выйти из приложения для Android? (Ксамарин)

Я разрабатываю Android с помощью Xamarin. В приложении есть модальное окно входа, и я хотел бы, чтобы поведение кнопки «Назад» в модальном окне входа по существу выходило из приложения, как если бы вы были в конце стека навигации.

Это возможно?


person Josh Russo    schedule 05.05.2016    source источник


Ответы (2)


Если вы отображаете модальное окно на Android через новое действие, переопределите OnBackPressed в модальном действии следующим образом:

public override void OnBackPressed()
{
            Intent intent = new Intent(Intent.ActionMain);
            intent.AddCategory(Intent.CategoryHome);
            intent.SetFlags(ActivityFlags.NewTask);
            StartActivity(intent);
}
person wishmaster    schedule 05.05.2016

Поскольку решение, предоставленное @wishmaster, действительно дает видимость поведения, которое я искал, я отметил его как приемлемое.

Однако для полноты я наткнулся на более подходящее решение. В классе Activity есть метод MoveTaskToBack(). Итак, вот каким было мое решение:

public void CloseApp()
{
    var mainActivity = Forms.Context as MainActivity;
    if (mainActivity != null)
        mainActivity.MoveTaskToBack(true);
}

Чтобы объяснить контекст немного больше. Я разрабатываю приложение Xamarin Forms, и это метод интерфейса, который внедряется на страницу форм входа.

person Josh Russo    schedule 05.05.2016