教 程 目 录
Xamarin教程
Xamarin是一家位于旧金山的软件公司.它提供商业软件开发工具,允许用户使用C#语言和.NET框架开发Android,iOS和Windows应用程序. Xamarin构建于.NET Framework之上.它允许用户创建轻松跨多个平台运行的应用程序.在本教程中,我们将解释如何使用Xamarin提供原生iOS,Android和Windows应用程序.
受众
本教程已经过为初学者开发,帮助他们理解使用Xamarin创建本机应用程序的基础知识.
先决条件
本教程中的所有程序都是使用Visual C#.因此,您应该很好地理解用C#编程语言编写的代码.
本文地址:https://itbaoku.cn/tutorial/xamarin-index.html
相关问答
我的问题是我要求应用程序的第一页是本地的.当用户登录时,我需要一种从Xamarin表单内容页面导航到应用程序的第一个本机页面的方法.无论如何,是否从表单页面开始启动本机viewController(iOS)或启动活动(Android).我定期使用自定义渲染器. 如果我可以以某种方式重新启动应用程序或再次致电AppDelegate或其他内容. 任何帮助都将受到赞赏. 解决方案 如果定期使用自定义渲染器,则可以创建一个自定义视图渲染器,例如 this .例如: 在PCL中: public class NewView : View { } 在Android平台中,首先创建一个布局/资源/布局:
)
很抱歉,我确定这是一个非常愚蠢的问题.. 我在 Xamarin 应用程序的表示层中使用的是 Android UI 而不是 Xamarin Forms,但我想使用 Activity.RunOnUIThread(来自 Android),所有 Xamarin 文档都建议使用 Device.BeginInvokeOnMainThread(来自 Xamarin.Forms)项目.显然我没有这个可用,因为我没有关于 xamarin.forms 项目的参考. 如果我不想使用 Forms,在哪里可以找到 Xamarin 中的 run-on-ui-thread 机制? 解决方案 Android: Android Activitys 有一个可以使用的 RunOnUiThread 方法: RunOnUiThread ( () => { // manipulate UI controls }); 参考:https:///developer.xamarin.com/api/member/Android.App.Activity.RunOnUiThread/p/Java.Lang.IRunnable/ iOS: InvokeOnMainThread (delegate { // manipulate UI controls });
)
我正在尝试在Xamarin应用中使用ItextSharp Dll,但是由于我收到此错误,我无法编译: Error Exception while loading assemblies: System.IO.FileNotFoundException: Could not load assembly 'System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. Perhaps it doesn't exist in the Mono for Android profile? File name: 'System.Drawing.dll' at Java.Interop.Tools.Cecil.DirectoryAssemblyResolver.Resolve(AssemblyNameReference reference, ReaderParameters parameters) at Xamarin.Android.Tasks.ResolveAssemblies.AddAssemblyReferences(DirectoryAssemblyResolver resolver, ICollection`1 assemblies, AssemblyD
)
昨天,我遇到了与 Xamarin.Behaviors 和 Xamarin.Forms 相关的错误.详细信息是我在我的 xaml 页面中添加这些代码行后引发了异常: 虽然,我已将此行添加到 xaml 命名空间 xmlns:b="clr-namespace:Xamarin.Behaviors;assembly=Xamarin.Behaviors" 应用程序崩溃并出现异常:“无法加载文件或程序集 'Xamarin.Behaviors' 或其依赖项之一.系统找不到指定的文件." 特别是,它只发生在 iOS 上,android 和 wp 仍然可以正常工作.所以,我猜这可能是 xamarin bug 或 xamarin studio bug ... P/S:我检查了 Xamarin.Behaviors 是否存在于我的项目的包文件夹中,但 App 仍然找不到该程序集的位置 解
)
我需要在 Xamarin.Forms 与 Xamarin 本机应用程序之间做出选择. 我想使用 Xamarin.Forms,因为 UI 代码也将被共享. 那么与 Native 相比,Xamarin.Forms 的缺点是什么. 解决方案 除了 Xamarin 网站中显示的 points,您还应该考虑: 你的团队背景 您的团队中是否有人曾有过为 Android 或 iOS 原生编码(使用 Java 或 Obj-C/Swift)的经验?这种体验在本机 Xamarin 中得到重用,但他们必须学习另一个平台才能在 Forms 中编码. 如果他们对 iOS/Android 一无所知,但知道一些 xaml,这也是事实.当然 Xamarin.Forms 与 WPF/Silverlight 不同,但了解 xaml 肯定有助于我使用 Forms. 性能 Xamarin Forms 仍然存在一些问题,例如初始化时间.您应该考虑这是否会成为您的最终用户的问题.我不会费心等待一段时间来打开我偶尔使用的仪表板应用程序,但如果消息应用程序发生同样的情况,我会很生气. 交货时间 由于使用 Forms 时代码共享更大,您可能会期望更快的交付时间. 应用的复杂性 考虑到前一点,使用 Forms 您可能会偶然发现一些阻碍时间的错误(毕竟这是一项非
)
在 iOS 上使用 Xamarin 表单,使用 await Navigation.PushModalAsync(new mypage()); 当我打电话时 await Navigation.PopModalAsync(); 它从 mypage 一直弹出到根目录,而不是我刚刚调用 push 的位置.其他任何地方都没有与模态推送页面交互的代码 解决方案 可以试试这样推: await ((MainPage)App.Current.MainPage).Detail.Navigation.PushAsync(new mypage()); 然后调用: Navigation.PopAsync();
)