protected virtual void RemoveFragmentFromBackStack(string fragmentName)
        {
            var existCache = FragmentsBackStack.FirstOrDefault(x => x.Key == fragmentName);

            if (existCache != null)
            {
                UnbindCycle(existCache.ViewModel);
                FragmentsBackStack.Remove(existCache);
            }
        }
        protected virtual void RemoveFragmentFromBackStack(MvxFragmentPresentationAttribute fragmentAttribute)
        {
            var fragmentName = FragmentJavaName(fragmentAttribute.ViewType);
            var existCache   = FragmentsBackStack.FirstOrDefault(x => x.Key == fragmentName);

            if (existCache != null)
            {
                UnbindCycle(existCache.ViewModel);
                FragmentsBackStack.Remove(existCache);
            }
        }