Xamarin Android:无法转换为' androidx.fragment.App.FragmentManager'到android.support.v4.app.fragmentManager'

发布于 2025-02-10 02:30:20 字数 1058 浏览 2 评论 0原文

我正在尝试使用Androidx迁移我的Xamarin Android应用程序。 迁移后,此错误即将到来。

无法转换从'androidx.fragment.app.fragmentmanager'到'android.support.support.v4.app.fragmentmanager'

using AndroidX.Fragment.App;
using Xamarin.Forms.Platform.Android;
using AndroidX.AppCompat.App;

 private void ShowDatePicker()
    {
        if (_monthYearPickerDialog == null)
        {
            _monthYearPickerDialog = new MonthYearPickerDialog();
            _monthYearPickerDialog.OnDateTimeChanged += OnDateTimeChanged;
            _monthYearPickerDialog.OnClosed += OnClosed;
        }
        _monthYearPickerDialog.Date = Element.Date;
        var appcompatActivity = CrossCurrentActivity.Current.Activity as AppCompatActivity;
        var mFragManager = appcompatActivity?.SupportFragmentManager;
        if (mFragManager != null)
        {
            _monthYearPickerDialog.Show(mFragManager, nameof(MonthYearPickerDialog));
        }
    }

任何帮助都将受到赞赏。谢谢!

I'm trying Migrate my Xamarin Android app with AndroidX.
After Migrate this error is coming.

cannot convert from 'AndroidX.Fragment.App.FragmentManager' to 'Android.Support.V4.App.FragmentManager'

using AndroidX.Fragment.App;
using Xamarin.Forms.Platform.Android;
using AndroidX.AppCompat.App;

 private void ShowDatePicker()
    {
        if (_monthYearPickerDialog == null)
        {
            _monthYearPickerDialog = new MonthYearPickerDialog();
            _monthYearPickerDialog.OnDateTimeChanged += OnDateTimeChanged;
            _monthYearPickerDialog.OnClosed += OnClosed;
        }
        _monthYearPickerDialog.Date = Element.Date;
        var appcompatActivity = CrossCurrentActivity.Current.Activity as AppCompatActivity;
        var mFragManager = appcompatActivity?.SupportFragmentManager;
        if (mFragManager != null)
        {
            _monthYearPickerDialog.Show(mFragManager, nameof(MonthYearPickerDialog));
        }
    }

Any help is appreciated. Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

深海里的那抹蓝 2025-02-17 02:30:20

您不能将support.v4名称空间与Androidx名称空间中的类型混合。因此,您将其定义在文件顶部是非常奇怪的:

using Fragment = Android.Support.V4.App.Fragment;
using SupportV4 = Android.Support.V4.App;

您应该使用androidx.fragment的片段。

停止混合事物,您的错误将会消失。

You cannot mix types from Support.V4 namespace with AndroidX namespace. So it is super weird that you are defining this in the top of the file:

using Fragment = Android.Support.V4.App.Fragment;
using SupportV4 = Android.Support.V4.App;

You should use Fragment from AndroidX.Fragment instead.

Stop mixing up things and your errors will go away.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文