void SetupBlurView() { float radius = 25f; float minBlurRadius = 10f; float step = 4f; //set background, if your root layout doesn't have one Drawable windowBackground = Window.DecorView.Background; var topViewSettings = topBlurView.SetupWith(root) .SetFrameClearDrawable(windowBackground) .SetBlurAlgorithm(new RenderScriptBlur(this)) // SupportRenderScriptBlur .SetBlurRadius(radius) .SetHasFixedTransformationMatrix(true); var bottomViewSettings = bottomBlurView.SetupWith(root) .SetFrameClearDrawable(windowBackground) .SetBlurAlgorithm(new RenderScriptBlur(this)) // SupportRenderScriptBlur .SetBlurRadius(radius) .SetHasFixedTransformationMatrix(true); int initialProgress = (int)(radius * step); radiusSeekBar.Progress = initialProgress; radiusSeekBar.ProgressChanged += (sender, args) => { float blurRadius = args.Progress / step; blurRadius = Math.Max(blurRadius, minBlurRadius); topViewSettings.SetBlurRadius(blurRadius); bottomViewSettings.SetBlurRadius(blurRadius); }; }
private void BlurBackground(BlurView blurView, float radius) { try { //float radius = 10f; View decorView = Window.DecorView; //ViewGroup you want to start blur from. Choose root as close to BlurView in hierarchy as possible. ViewGroup rootView = decorView.FindViewById <ViewGroup>(Android.Resource.Id.Content); //Set drawable to draw in the beginning of each blurred frame (Optional). //Can be used in case your layout has a lot of transparent space and your content //gets kinda lost after after blur is applied. Drawable windowBackground = decorView.Background; blurView.SetupWith(rootView) .SetFrameClearDrawable(windowBackground) .SetBlurAlgorithm(new RenderScriptBlur(this)) .SetBlurRadius(radius) .SetBlurAutoUpdate(true) .SetHasFixedTransformationMatrix(true); } catch (Exception e) { Methods.DisplayReportResultTrack(e); } }
protected override void OnElementChanged(ElementChangedEventArgs <FormsBlurView> e) { base.OnElementChanged(e); if (Control == null) { var context = Context; var activity = context as Activity; var rootView = (ViewGroup)activity.Window.DecorView.FindViewById(Android.Resource.Id.Content); var windowBackground = activity.Window.DecorView.Background; var blurView = new BlurView(context); blurView.SetBackgroundColor(Color.White.MultiplyAlpha(.75).ToAndroid()); blurView.SetupWith(rootView) .WindowBackground(windowBackground) .BlurAlgorithm(new RenderScriptBlur(context)) .BlurRadius(25f) //.SetHasFixedTransformationMatrix(true) ; SetNativeControl(blurView); } }
protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); // Set our view from the "main" layout resource SetContentView(Resource.Layout.activity_main); //BlurView Start root = FindViewById <ViewGroup>(Resource.Id.root); mainBlurView = FindViewById <BlurView>(Resource.Id.mainBlurView); float radius = 0.5F; //set background, if your root layout doesn't have one Drawable windowBackground = Window.DecorView.Background; var topViewSettings = mainBlurView.SetupWith(root) .WindowBackground(windowBackground) .BlurAlgorithm(new RenderScriptBlur(this)) // SupportRenderScriptBlur .BlurRadius(radius) .SetHasFixedTransformationMatrix(true); ////BlurView End // Find views var pager = FindViewById <ViewPager>(Resource.Id.pager); var tabLayout = FindViewById <TabLayout>(Resource.Id.sliding_tabs); var adapter = new CustomPagerAdapter(this, SupportFragmentManager); var toolbar = FindViewById <Toolbar>(Resource.Id.my_toolbar); // Setup Toolbar SetSupportActionBar(toolbar); //SupportActionBar.Title = "Lettre"; SupportActionBar.Hide(); // Set adapter to view pager pager.Adapter = adapter; // Setup tablayout with view pager tabLayout.SetupWithViewPager(pager); // Iterate over all tabs and set the custom view for (int i = 0; i < tabLayout.TabCount; i++) { TabLayout.Tab tab = tabLayout.GetTabAt(i); tab.SetCustomView(adapter.GetTabView(i)); } }
protected override void OnElementChanged(ElementChangedEventArgs <FormsBlurView> e) { base.OnElementChanged(e); if (Control == null) { var context = Context; var activity = context as Activity; var rootView = (ViewGroup)activity.Window.DecorView.FindViewById(Android.Resource.Id.Content); var windowBackground = activity.Window.DecorView.Background; var blurView = new BlurView(context); blurView.SetOverlayColor(Resource.Color.colorOverlay); blurView.SetupWith(rootView) .WindowBackground(windowBackground) .BlurAlgorithm(new RenderScriptBlur(context)) .BlurRadius(10f); SetNativeControl(blurView); } }