【发布时间】:2018-12-06 01:04:09
【问题描述】:
当我按下我在共享代码项目中创建的按钮时,我正在尝试通过显示来自 android 项目的警报对话框来测试我的应用程序的 DependencyService。
当我尝试通过在括号中输入“this”来设置“AlertDialog.Builder”中的 Context 属性时,我收到此错误:“无法从 'CallDiverter2.Droid.CallDiverter_Android' 转换为 'Android.Content.Context' .
命名空间也装饰有:'[assembly: Dependency(typeof(CallDiverter_Android))]'(如果有的话)。
这是我想使用 DependecyService 调用的 android 项目中的函数:
public class CallDiverter_Android : ICallDiverter
{
public void DivertCall(string callForwardString)
{
//Divert call code
//String callForwardString = "**21*1234567890#";
//Intent callIntent = new Intent(Intent.ActionDial); // ACTION_CALL
//Android.Net.Uri uri = Android.Net.Uri.Parse(callForwardString);
//callIntent.SetData(uri);
//Android.App.Application.Context.StartActivity(callIntent);
AlertDialog.Builder dialog = new AlertDialog.Builder(this);
AlertDialog alert = dialog.Create();
alert.SetTitle("Title");
alert.SetMessage("Simple Alert");
alert.SetButton("OK", (s, ev) =>
{
alert.SetMessage("This is an alert message");
});
alert.Show();
}
public void StopCallDiverting()
{
//Stop the call diverting action
}
}
我应该如何解决这个问题才能成功测试dependencyService?
【问题讨论】:
-
new AlertDialog.Builder()构造函数需要Android.content.context作为第一个参数,而您传递this,这不是上下文。
标签: c# android xamarin.android