Поток моего приложения выглядит следующим образом:
MainActivity: HomeFragment -> BlackoutSetupFragment -> BlackoutFragment -> HomeFragment
По какой-то причине, когда я пытаюсь перейти к HomeFragment изBlackoutFragment, MainActivity становится пустым, и ничего не отображается, пока я не покину приложение и не вернусь к нему.Слева - то, как обычно выглядит HomeFragment, а справа - как я возвращаюсь к нему:
The set of methods I am using to set the fragments:
// Which is invoked like
// SetFragment(typeof(HomeFragment), "Home", true, true, false);
public void SetFragment(Type fragmentType, string fragmentName, bool addToBackStack, bool showNavigationIndicator, bool useSlideAnimation)
{
if (fragmentType == typeof(HomeFragment))
SetFragment(new HomeFragment(), fragmentType, fragmentName, addToBackStack, showNavigationIndicator, useSlideAnimation);
else if (fragmentType == typeof(BlackoutFragment))
SetFragment(new BlackoutFragment(), fragmentType, fragmentName, addToBackStack, showNavigationIndicator, useSlideAnimation);
else if (fragmentType == typeof(BlackoutSetupFragment))
SetFragment(new BlackoutSetupFragment(), fragmentType, fragmentName, addToBackStack, showNavigationIndicator, useSlideAnimation);
}
private void SetFragment(Fragment fragment, Type fragmentType, string fragmentName, bool addToBackStack, bool showNavigationIndicator, bool useSlideAnimation)
{
FragmentTransaction transaction = this.FragmentManager.BeginTransaction();
if (useSlideAnimation)
transaction.SetCustomAnimations(Resource.Animator.enter_from_left, Resource.Animator.exit_to_right, Resource.Animator.enter_from_right, Resource.Animator.exit_to_left);
transaction.Replace(Resource.Id.content_main_fragment_layout, fragment, fragmentType.Name);
if (addToBackStack)
transaction.AddToBackStack(null);
transaction.Commit();
this.FragmentManager.ExecutePendingTransactions();
if (!string.IsNullOrWhiteSpace(fragmentName))
SetAppBarTitle(fragmentName);
if (showNavigationIndicator) _navDrawerToggle.DrawerIndicatorEnabled = true;
else _navDrawerToggle.DrawerIndicatorEnabled = false;
}
and the axml for the main activity's content is this:
<?xml version="1.0" encoding="utf-8"?>
Кто-нибудь знает, что здесь может происходить?Я попытался включить все, что, по моему мнению, было бы полезно для отладки, но если что-то еще нужно, напишите мне комментарий.