Как удалить том HUD на формах Xamarin?

Я сделал customrenderer для визуализации MPVolumeView внутри приложения xamarin.forms. Всякий раз, когда я настраиваю громкость, на экране появляется большой системный HUD, который блокирует содержимое на экране. Выглядит примерно так:

Как мне это убрать? Это мой пользовательский рендер:

public class AudioOutputViewRenderer : ViewRenderer<AudioOutputView, UIView>
{
    MPVolumeView view;

    protected override void OnElementChanged(ElementChangedEventArgs<AudioOutputView> e)
    {
        base.OnElementChanged(e);

        TintColor = UIColor.FromRGB(54, 66, 94);

        if (Control == null)
        {
            view = new MPVolumeView()
            {
                ShowsRouteButton = false,
                ShowsVolumeSlider = true

            };

            SetNativeControl(view);
        }
    }
}

0 ответов

Я не понял смысла AudioOutputViewRenderer

Но чтобы скрыть MPVolumeView вам нужно следующее:

в вашем IosProject -> AppDelegate -> метод FinishedLaunching добавить следующий код

        var volumeView = new MPVolumeView(new CGRect(-1000,0,0,0));// -1000 will hide your view  from user 
        volumeView.ClipsToBounds = true;
        var slider = volumeView.Subviews.First(x => x is UISlider) as UISlider;
        UIApplication.SharedApplication.KeyWindow.RootViewController.View.AddSubview(volumeView);

После вы можете использовать вар slider чтобы изменить громкость, как это

        slider.Value = [your vlm]; 
Другие вопросы по тегам