1

Xamarin.Formsを使用してAndroidコンテキストを取得するためのいくつかの古いソリューションを見てきました。これらの古いソリューションはXamarin.Forms.Forms.Contextの使用を示唆していますが、Xamarin.Formsプラットフォームが絶えず変化しているため、これはもう機能しません。Xamarin.FormsのAndroidコンテキストへのアクセス

私の例では、Interfaceクラスのプラットフォーム固有の実装を使用するために、私の共有コードプロジェクトのDependencyService.Get<Interface>()を使用しました。

Xamarin.Andriodを使用してプラットフォーム固有の機能を使用する場合は、Androidコンテキストを使用する必要があります。

Android Contextのグローバル情報インターフェイスを取得するにはどうすればよいですか?

答えて

7
  1. ソリューションのApp.Droidプロジェクトで作成したクラスに移動します。
  2. using Android.Content;が上部に含まれていることを確認してください。
  3. コンテキストを保持する変数を作成し、Android.App.Application.Contextで初期化します。

これだけです!

using Android.Content; 

[assembly: Xamarin.Forms.Dependency(typeof(DroidClass))] 
namespace App.Droid 
{ 
    public class DroidClass : Interface 
    { 
    Context context = Android.App.Application.Context; 

    public DroidClass() 
    { 
     Toast.MakeText(context, "Grabbed Context!", ToastLength.Long).Show(); 
     } 
     } 
    } 
関連する問題