Я пытаюсь заставить FragmentTransation и FragmentManager работать в C# с использованием Android .Support.V4.App.Fragment, однако пространство имен затенено, а VS говорит: «Использование директивы не требуется». Я установил XAmarin Android Support V4 NuGet Package, очистил и перестроил мой проект, установил Xamarin. Android .Support.Fragment, ни один не работал. Пожалуйста, помогите мне понять, почему они все еще считаются устаревшими в VS, хотя я включил эту библиотеку.
using Android.App;
using Android.OS;
using Android.Support.V7.App;
using Android.Runtime;
using Android.Widget;
using Android.Support.V4.App.Fragment;
using System;
namespace LoginSystem
{
[Activity(Label = "@string/app_name", Theme = "@style/AppTheme", MainLauncher = true)]
public class MainActivity : AppCompatActivity
{
private Button mBtnSignUp;
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
Xamarin.Essentials.Platform.Init(this, savedInstanceState);
// Set our view from the "main" layout resource
SetContentView(Resource.Layout.activity_main);
mBtnSignUp = FindViewById<Button>(Resource.Id.btnSignUp);
mBtnSignUp.Click += (object sender, EventArgs e) =>
{
//DEPRECATION HERE
FragmentTransaction transaction = FragmentManager.BeginTransaction();
dialog_SignUp signUpDialog = new dialog_SignUp();
signUpDialog.Show(transaction, "dialog fragment");
};
}
public override void OnRequestPermissionsResult(int requestCode, string[] permissions, [GeneratedEnum] Android.Content.PM.Permission[] grantResults)
{
Xamarin.Essentials.Platform.OnRequestPermissionsResult(requestCode, permissions, grantResults);
base.OnRequestPermissionsResult(requestCode, permissions, grantResults);
}
}
}