首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Xamarin.Android预测后退手势(OnBackPressed不推荐)

Xamarin.Android预测后退手势(OnBackPressed不推荐)
EN

Stack Overflow用户
提问于 2022-10-14 17:40:46
回答 2查看 149关注 0票数 0

在Android13中,OnBackPressed方法已经不受欢迎了。如何在Xamarin.Android中实现此代码?

代码语言:javascript
复制
@Override
void onCreate() {
  if (BuildCompat.isAtLeastT()) {
    getOnBackInvokedDispatcher().registerOnBackInvokedCallback(
        OnBackInvokedDispatcher.PRIORITY_DEFAULT,
        () -> {
          /**
          * Code here
          */
        }
    );
  }
}

上面的代码是官方android网站上的Java示例,但我在Xamarin中找不到替代的地方。有人能把这个翻译成C#吗?

这是Visual的建议,但一点帮助都没有。

代码语言:javascript
复制
Warning CS0672:Member 'MainActivity.OnBackPressed()' overrides obsolete member 'Activity.OnBackPressed()'. Add the Obsolete attribute to 'MainActivity.OnBackPressed()'.    
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-10-14 18:08:35

您可以尝试使用OnBackPressedDispatcher.AddCallback()

MainAcivity.cs

代码语言:javascript
复制
    protected override void OnCreate(Bundle savedInstanceState)
    {
        base.OnCreate(savedInstanceState);
        if (BuildCompat.IsAtLeastT)
        {
        OnBackPressedDispatcher.AddCallback(new CustomOnBackPressed(true));
        }

CustomOnBackPressed.cs

代码语言:javascript
复制
public class CustomOnBackPressed : OnBackPressedCallback
{
    public OnBack(bool enabled) : base(enabled)
    {
    }

    public override void HandleOnBackPressed()
    {
        //code that handles back button pressed
    }
}

相关问题

onBackPressed()被否决了,还有什么可供选择的呢?

票数 1
EN

Stack Overflow用户

发布于 2022-10-15 23:41:56

有一系列Xamarin.Android教程使用NavigationComponent at https://github.com/gmck。随着项目的进展,您将看到OnBackPressedCallback的引入,它在后面的项目中被广泛使用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74072976

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档