protected override void Dispose(bool disposing)
        {
            if (disposing)
            {
                if (null != ItemBackgroundDrawable)
                {
                    ItemBackgroundDrawable.Dispose();
                }
                if (null != m_Inflater)
                {
                    m_Inflater.Dispose();
                }
                if (null != m_OverflowAction)
                {
                    m_OverflowAction.Dispose();
                }
                ItemBackgroundDrawable = null;
                m_Inflater             = null;
                m_BarView        = null;
                m_LogoView       = null;
                m_BackIndicator  = null;
                m_TitleView      = null;
                m_ActionsView    = null;
                m_HomeBtn        = null;
                m_HomeLayout     = null;
                m_Progress       = null;
                m_TitleLayout    = null;
                m_Context        = null;
                m_OverflowAction = null;
            }

            base.Dispose(disposing);
        }
Exemple #2
0
        protected override void Dispose(bool disposing)
        {
            if (disposing)
            {
                if (null != ItemBackgroundDrawable)
                {
                    ItemBackgroundDrawable.Dispose();
                }
                if (null != _inflater)
                {
                    _inflater.Dispose();
                }
                if (null != _overflowLegacyBarAction)
                {
                    _overflowLegacyBarAction.Dispose();
                }
                ItemBackgroundDrawable = null;
                _inflater                = null;
                _barView                 = null;
                _logoView                = null;
                _backIndicator           = null;
                _titleView               = null;
                _actionsView             = null;
                _homeBtn                 = null;
                _homeLayout              = null;
                _progress                = null;
                _titleLayout             = null;
                _overflowLegacyBarAction = null;
            }

            base.Dispose(disposing);
        }
Exemple #3
0
        public override void OnDestroy(Action baseOnDestroy)
        {
            if (Tracer.TraceInformation)
            {
                Tracer.Info($"OnDestroy activity({Target})");
            }
            ServiceProvider.EventAggregator.Unsubscribe(this);
            Destroyed?.Invoke(Target, EventArgs.Empty);
            _view.ClearBindingsRecursively(true, true, AndroidToolkitExtensions.AggressiveViewCleanup);
            _view = null;

            if (_metadata != null)
            {
                _metadata.Clear();
                _metadata = null;
            }

            MenuTemplate.Clear(_menu);
            _menu = null;

            if (_menuInflater != null)
            {
                _menuInflater.Dispose();
                _menuInflater = null;
            }
            if (_layoutInflater != null)
            {
                _layoutInflater.Dispose();
                _layoutInflater = null;
            }
            ServiceProvider.Get <INavigationService>().OnDestroyActivity(Target, NavigationContext);
            base.OnDestroy(baseOnDestroy);
            ThreadPool.QueueUserWorkItem(state => AndroidToolkitExtensions.CleanupWeakReferences(true));
            AndroidToolkitExtensions.SetCurrentActivity(Target, true);
            Target.ClearBindings(false, true);
            OptionsItemSelected  = null;
            ActivityResult       = null;
            ConfigurationChanged = null;
            PostCreate           = null;
            BackPressing         = null;
            Created           = null;
            Started           = null;
            Paused            = null;
            SaveInstanceState = null;
            Stoped            = null;
            Restarted         = null;
            Resume            = null;
            Destroyed         = null;
        }
        protected override void OnDestroy()
        {
            base.OnDestroy();


            //Анимация и вибрация нажатия на кнопки
            if (_fadeAnimation != null)
            {
                _fadeAnimation.Dispose();
            }
            if (_vibe != null)
            {
                _vibe.Dispose();
            }

            //Диалоговые окна оповещения
            if (_messageDialogBuilder != null)
            {
                _messageDialogBuilder.Dispose();
            }
            if (_messageDialog != null)
            {
                _messageDialog.Dispose();
            }
            if (_baseLayoutInflater != null)
            {
                _baseLayoutInflater.Dispose();
            }

            //Объекты создания прогрессДиалога
            if (_progressDialog != null)
            {
                _progressDialog.Dispose();
            }
            if (_progressDialogRelativeLayout != null)
            {
                _progressDialogRelativeLayout.Dispose();
            }
            if (_progressDialogView != null)
            {
                _progressDialogView.Dispose();
            }
            if (_progressDialogMessage != null)
            {
                _progressDialogMessage.Dispose();
            }

            //Сторонний шрифт
            if (_robotoLightFont != null)
            {
                _robotoLightFont.Dispose();
            }

            //Второстепенный поток
            if (_asyncInitThread.ThreadState == ThreadState.Running)
            {
                _asyncInitThread.Abort();
            }

            //Объекты листа Бейджа
            if (_badgeSheetBadgeImageView != null)
            {
                _badgeSheetBadgeImageView.Dispose();
            }
            if (_badgeSheetCloseImageButton != null)
            {
                _badgeSheetCloseImageButton.Dispose();
            }
            if (_badgeSheetCloseFakeImageButton != null)
            {
                _badgeSheetCloseFakeImageButton.Dispose();
            }
            if (_badgeSheetUserNameTextView != null)
            {
                _badgeSheetUserNameTextView.Dispose();
            }
            if (_badgeSheetDescrTextView != null)
            {
                _badgeSheetDescrTextView.Dispose();
            }
            if (_badgeSheetAnounceTextView != null)
            {
                _badgeSheetAnounceTextView.Dispose();
            }
            if (_badgeSheetBonusListLinearLayout != null)
            {
                _badgeSheetBonusListLinearLayout.Dispose();
            }
            if (_badgeSheetBonusView != null)
            {
                _badgeSheetBonusView.Dispose();
            }
            if (_badgeSheetBonusLineImageView != null)
            {
                _badgeSheetBonusLineImageView.Dispose();
            }
            if (_badgeSheetDiscountLineImageView != null)
            {
                _badgeSheetDiscountLineImageView.Dispose();
            }
            if (_badgeSheetPresentLineImageView != null)
            {
                _badgeSheetPresentLineImageView.Dispose();
            }
            if (_badgeSheetBonusDescrBackgroundImageView != null)
            {
                _badgeSheetBonusDescrBackgroundImageView.Dispose();
            }
            if (_badgeSheetDiscountDescrBackgroundImageView != null)
            {
                _badgeSheetDiscountDescrBackgroundImageView.Dispose();
            }
            if (_badgeSheetPresentDescrBackgroundImageView != null)
            {
                _badgeSheetPresentDescrBackgroundImageView.Dispose();
            }
            if (_badgeSheetBonusNameTextView != null)
            {
                _badgeSheetBonusNameTextView.Dispose();
            }
            if (_badgeSheetBonusDescrTextView != null)
            {
                _badgeSheetBonusDescrTextView.Dispose();
            }
        }