Xamarin.android如何添加snackbar回调

Posted

技术标签:

【中文标题】Xamarin.android如何添加snackbar回调【英文标题】:Xamarin.android how to add snackbar callback 【发布时间】:2021-02-03 21:31:57 【问题描述】:

如何在 C# 中向快餐栏添加回调?我找到了这样做的方法,但是在 java How can I be notified when a Snackbar has dismissed itself?

我尝试在 c# 中做同样的事情

 snackBar.AddCallback(new Snackbar.Callback
    
   
   );

我确实发现它存在于小吃吧回调类中,但不幸的是我在 xamarin 文档中没有找到任何关于它的信息。

      [Register("onDismissed", "(Landroid/support/design/widget/Snackbar;I)V", "GetOnDismissed_Landroid_support_design_widget_Snackbar_IHandler")]
      public virtual void OnDismissed(Snackbar transientBottomBar, int e);

【问题讨论】:

【参考方案1】:

你可以先定义一个CallBack,然后使用AddCallBack方法。

class MySnackCallBack : BaseTransientBottomBar.BaseCallback
    
        public override void OnDismissed(Java.Lang.Object transientBottomBar, int e)
        
            base.OnDismissed(transientBottomBar, e);
          
        

        public override void OnShown(Java.Lang.Object transientBottomBar)
        
            base.OnShown(transientBottomBar);
            
        
    

Snackbar snackbar = Snackbar.Make(view, message, Snackbar.LengthShort);
snackbar.AddCallback(new MySnackCallBack());
snackbar.Show();

【讨论】:

以上是关于Xamarin.android如何添加snackbar回调的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Xamarin.Android 应用上集成新的 Google 登录?

将xamarin android控件添加到visual studio工具箱中

如何从 C++ 为 Xamarin.Android 创建 C# DLL

如何在 Xamarin.Android 中使用 mipmap 文件夹?

在 Xamarin.Android 中通过 MVVMCross 绑定 OxyPlot

如何停止 Xamarin Android StackView 元素中的项目重叠?