Как удалить том 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];