我是 xamarin 的新手,想在我的 xamarin.forms 项目中实现对话框
Posted
技术标签:
【中文标题】我是 xamarin 的新手,想在我的 xamarin.forms 项目中实现对话框【英文标题】:I am new to xamarin and want to implement dialogs in my xamarin.forms project 【发布时间】:2018-05-24 06:06:20 【问题描述】:我正在尝试在我的 xamain.forms 项目中实现 acr.userDialogs,它在 android 中得到了完美的实现,但是当我尝试在 ios 设备中运行它时得到空对象引用。
这是我正在使用的对话框的库参考:
https://github.com/aritchie/userdialogs
这是我的page.xaml.cs
文件:
[XamlCompilation(XamlCompilationOptions.Compile)]
public partial class Page1 : ContentPage
public Page1 ()
InitializeComponent ();
UserDialogs.Instance.Alert("Demo Dialog", "Dialog", "ok");
这里是安卓ManinActivity.cs
文件:
[Activity(Label = "App3", Icon = "@mipmap/icon", Theme = "@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
protected override void OnCreate(Bundle bundle)
TabLayoutResource = Resource.Layout.Tabbar;
ToolbarResource = Resource.Layout.Toolbar;
UserDialogs.Init(() => (Activity)Forms.Context);
base.OnCreate(bundle);
global::Xamarin.Forms.Forms.Init(this, bundle);
LoadApplication(new App());
这是我的appDelegate.cs
iOS 文件:
public override bool FinishedLaunching(UIApplication app, NSDictionary options)
global::Xamarin.Forms.Forms.Init();
LoadApplication(new App());
return base.FinishedLaunching(app, options);
这是我用于 iOS 的 Main.cs
文件:
public class Application
// This is the main entry point of the application.
static void Main(string[] args)
// if you want to use a different Application Delegate class from "AppDelegate"
// you can specify it here.
UIApplication.Main(args, null, "AppDelegate");
我还查看了库文档,发现您不需要像在 iOS 中那样自动初始化 userDialogs,但是在 android 中,必须在 MainActivity.cs 文件中初始化对话框,我已经这样做了。 请检查并让我知道我的代码中缺少什么。
【问题讨论】:
【参考方案1】:根据 Acr.UserDialogs 的 FAQ,
当您从 页面或视图模型的构造函数。视图尚未渲染 然而,因此没有什么可以渲染的。
您在页面的构造函数中调用它。
尝试在某些按钮单击时显示警报,您应该可以做到。
【讨论】:
是的,我试了一下,它工作正常,我读过同样的内容,但我不明白它是如何通过@MilanG 在 android 上工作的以上是关于我是 xamarin 的新手,想在我的 xamarin.forms 项目中实现对话框的主要内容,如果未能解决你的问题,请参考以下文章
Xamarin ListView itemSelected MVVM
Xamarin.Forms UWP 项目不会安装在 Windows 10 移动版上
Xamarin.GooglePlayServices.Ads。破坏了我的项目