如何禁用波纹效果选项卡式Xamarin?

问题描述 投票:0回答:1

我有一个选项卡式栏,按下它的按钮,就会出现波纹效果。我想完全禁用此效果。

我需要针对Android的自定义渲染器。

enter image description here

c# xamarin xamarin.android
1个回答
0
投票

我找到了解决方案。

在自定义渲染器中:

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

        if (e.NewElement != null)
        {
            _bottomNavigationView = (GetChildAt(0) as Android.Widget.RelativeLayout).GetChildAt(1) as BottomNavigationView;
            _tabbedPage.PropertyChanged += Element_PropertyChanged;


            ViewGroup vg = (ViewGroup)_bottomNavigationView.GetChildAt(0);
            int tabsCount = vg.ChildCount;
            for (int j = 0; j < tabsCount; j++)
            {
                ViewGroup vgTab = (ViewGroup)vg.GetChildAt(j);
                int tabChildsCount = vgTab.ChildCount;
                vgTab.SetBackgroundResource(App1.Droid.Resource.Drawable.hideRipple);
            }
        }
    }

在drawable / hideRipple.xml中]

<?xml version="1.0" encoding="utf-8" ?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
  <color android:startColor="@android:color/transparent"/>
</shape>
© www.soinside.com 2019 - 2024. All rights reserved.