当ProgressBar对话框显示时,底部导航卡住了

时间:2018-07-04 13:05:40

标签: android xamarin.android progressdialog android-progressbar bottomnavigationview

有人可以建议以下问题吗?

实际上,在显示进度栏对话框时,我无法浏览BottomNavigationView选项。

有没有办法将对话框的高度调整到BottomNavigationView以便导航可以正常工作?

进度条对话框

public class BusyViewOverlay
{
    private bool _isRunning;
    private Dialog dialog;
    public BusyViewOverlay(Context context)
    {
        dialog = new Dialog(context);
        var progressBar = new ProgressBar(context);

        progressBar.Indeterminate = true;
        progressBar.Visibility = ViewStates.Visible;
        progressBar.IndeterminateDrawable = context.GetDrawable(Resource.Drawable.progress_animation);
        dialog.Window.SetBackgroundDrawable(new ColorDrawable(Android.Graphics.Color.Transparent));
        dialog.SetCanceledOnTouchOutside(false);
        dialog.Window.SetDimAmount(0.0f);
        dialog.SetContentView(progressBar);
    }

    public bool IsRunning
    {
        get => _isRunning;
        set
        {
            _isRunning = value;

            if (_isRunning)
            {
                Show();
            }
            else
            {
                Dismiss();
            }
        }
    }

    private void Show() {
        dialog.Show();
    }

    private void Dismiss() {
        dialog.Dismiss();
    }
}

1 个答案:

答案 0 :(得分:0)

那么,我能想到的最好的方法是不使用进度条对话框,而是在布局中使用进度条并隐藏它或使用可视性。当您需要显示它时,请将可见性设置为“可见”。

执行此操作的另一种方法是将对话框动态放入特定布局中。