我已经看到了一些使用Xamarin.Forms获取Android上下文的旧解决方案。这些较旧的解决方案建议使用Xamarin.Forms.Forms.Context
,但由于不断变化的Xamarin.Forms平台,这不再适用。
在我的示例中,我使用了共享代码项目中的DependencyService.Get<Interface>()
来使用Interface
类的特定于平台的实现。
使用Xamarin.Andriod使用特定于平台的功能时,需要使用Android Context。
那么我们如何获得Android上下文的全局信息界面呢?
答案 0 :(得分:11)
using Android.Content;
。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();
}
}
}