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

时间:2020-03-24 16:12:53

标签: c# xamarin xamarin.android

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

我需要一个用于Android的自定义渲染器。

enter image description here

1 个答案:

答案 0 :(得分:1)

我找到了解决方法。

在自定义渲染器中:

    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;

            ViewGroup vg = (ViewGroup)_bottomNavigationView.GetChildAt(0);
            int tabsCount = vg.ChildCount;
            for (int j = 0; j < tabsCount; j++)
            {
                ViewGroup vgTab = (ViewGroup)vg.GetChildAt(j);
                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>