Articles of xamarin forms

如何使用Xamarin.Forms显示警报框进行validation?

如何使用Xamarin.Forms显示警报框进行validation? 我知道我们可以使用来自ContentView代码的下面的代码显示警报,但我想从我的ViewModel显示alertbox。 DisplayAlert (“Alert”, “You have been alerted”, “OK”); 我已使用以下代码在View中注册了我的ViewModel 。 ViewFactory.Register ();

Xamarin表示图像大小不匹配

我正在使用Xamarin Forms实现一个跨平台的应用程序,我正在努力解决一个奇怪的错误:我正在尝试创建一个带有文本的按钮。 为了实现它,我正在使用AbsoluteLayout 。 我为iOS项目添加了一个图像,用于每种iOS分辨率types(.png,@ 2x.png,@ 3x.png)。 使用标准的标签,一切正常。 但是,当以绝对布局包装图像时 – 图像会失去其分辨率比例,并导致边框。 上面的代码: 产生以下内容: 在iPhone 6 + / 6s + / 7 +上(模拟器是iPhone 7 Plus): 这是预期的行为。 在iPhone 6 / 6s / 7上(模拟器是iPhone 7): 请注意图像上的蓝色小边框,在AbsoluteLayout上设置为背景 在5SE / 5s及以下: 注意大蓝色边框。 为了调试这个,我把相同的图像放两次 – 首先在AbsoluteLayout中,然后作为StackLayout中的标准项。 绝对布局中的图像具有比例错误,而没有它的图像则没有。 我有点迷失在这里。 有没有办法破解我们的方式? 我试图创造。 手动分配图像大小的自定义渲染器,但似乎UIImage提供了Xamarin使用的不同大小单位,并且它无法解决Android上的问题。 任何建议将非常感谢! 编辑(3/5/2017):只是为了让您更新 – 似乎这是Xamarin Forms中的一般错误。 我发布的解决方案是一种解决方法,我一遍又一遍地坚持这个问题。 例如,我尝试创建此GUI: 我已经创建了以下代码: 一切都很好,直到我添加图像,这导致以下输出: 如果有人想出如何破解它,我真的很感激他或她是否可以在这里发布解决方案! […]

使用Xamarin.Forms时,Xamarin.Droid在Visual Studio 2015中导致生成错误

最近,我开始学习使用Xamarin.Forms开发移动应用程序。 我创建了一个应用程序“Hello”,它有六个项目,一个Portable Shared Library项目,一个Android,一个iOS和三个Windows(两个用于Windows 8和Windows 8 Phone,一个用于Windows 10 UWP)。 我正在获取NuGet包更新,我的问题从那里开始。 第一个问题: 更新主要是Android支持库,但其中一个是Xamarin.Forms。 所有这些都得到了更新,除了这个。 我的所有Android支持库包都更新到v23.2.1。 尝试更新Xamarin.Forms时出现以下错误: 所以我决定不更新,然后继续构建项目(我做的唯一修改是在App.cs中,将XAlign更改为HorizontalTextAlign因为我在错误列表中收到警告要执行此操作,所有代码都存在已经是这样),这是我的second problem : 我从Hello.Droid获得了119个错误,Hello.iOS发出了2个警告,Hello.WinPhone发出1个警告,Hello.Windows发出1个警告,Hello发出1个警告(Hello是我的App名称)。 以下是截图: 屏幕截图中不可见的错误具有代码CS0117并且具有以下开头的描述:“’Resource.Stylable’不包含……等等” 我不明白造成这些错误的原因是什么,以及它们的解决方案是什么。 在这里发布我的问题的唯一原因是我无法在互联网上find我的问题的解决方案。 我搜索了很多。 帮助将不胜感激。 PS我已经知道Xamarin专家正试图帮助这个网站的开发人员,所以我请他们试着帮助我。 如果需要更多信息,请告诉我,我会提供。 提前致谢。 编辑:这些是Android支持包: 编辑2:新错误的屏幕截图: 这个问题在这里继续: 第2部分

Android上的Xamarin.Forms ListView OutOfMemoryErrorexception

有没有人尝试使用包含图像视图的ItemTemplate的A Xamarin.Forms Listview? 现在,当ListView包含大约20行或更多行时会发生什么? 至于我,我有一个大约4K大小的.png文件加载到图像视图中。 在使用OutOfMemoryError崩溃应用程序之前,最多显示9到12行。 在Android Manifest中请求一个大堆之后,应用程序在60-70行之后崩溃。 我知道Xamarin正在推广使用BitmapFactory类来缩小位图,但这不适用于Xamarin Forms Image View(开箱即用)。 我试图摆弄ImageRenderer的Sub Class,看看我是否可以添加一个BitmapFactory.Options属性,如果这样可以解决问题。 此外,我可能需要检查Xamarin.Forms是否在ViewCell滚动屏幕后处理(回收)包含的位图。 在开始这个旅程之前,我非常希望得到任何可以使这个更简单或更简单的解决方案的评论,认为这个过程是不必要的。 期待…

如何在Visual Studio 2015中减少Xamarin Forms App的用户代码大小?

我今天在Windows 7上安装了Visual Studio 2015 RTM,并在Xamarin(Starter License)上注册了一个新帐户。 创建项目后: 我试图运行该应用程序(之前创建的AVD)。 我得到的只是这个错误: mandroid错误XA9005:用户代码大小2949503字节大于131072并且需要aBusinessá(或更高)许可证。 mandroid错误XA9006:使用Android.Runtime.JNIEnvtypes需要商务(或更高)许可证。 很清楚我必须做什么,但我不想改为营业执照。 就个人而言,没有升级我的许可证,我无法运行一个空白的,新创建的项目。 我该怎么做才能减少“用户代码大小”?

Xamarin表示图像未显示

我有一个Xamarin Forms(2.0)Android应用程序,我正在尝试显示图像。 我有一个名为icon-pages-r1.png ,我试图使用以下代码显示: 但是图像没有显示。 当我将源更改为Icon.png (默认的Xamarin图标)时,它确实有效。 图像是半透明的PNG(因此中间是彩色图标,周围是透明的),它是46×46,在Windows中,它显示为项目typesPNG文件。 我尝试在Paint中打开图像并重新保存它(这会破坏透明度),但这也不起作用。 图像的Build Action是AndroidResource其中“ Copy to Output Directory设置为Do not copy 。 有谁知道为什么我不能在我的应用程序中显示此图像?

xamarin.forms中的DefaultRenderer错误(Android)

我正在使用xamarin表单…有时当我尝试回到我的上一页时,我看到了这个(Android设备): System.NotSupportedException:无法从本机句柄0xbeb4a30c激活Xamarin.Forms.Platform.Android.Platform + DefaultRenderertypes的实例 我在标签渲染器和框渲染器中看到了同样的问题,但我解决了在自定义渲染器中创建构造函数的问题,因为下链接建议: MonoDroid:调用自定义视图的构造函数时出错 – TwoDScrollView 但是没有关于DefaultRenderer错误的内容,因为我在过去30天内搜索过的所有内容……我疯了…… 完全例外: System.NotSupportedException:无法从本机句柄0xbecdf3ac(key_handle 0x24da7695)激活Xamarin.Forms.Platform.Android.Platform + DefaultRenderertypes的实例。 04-04 11:51:53.914 D / Mono(30832):DllImport尝试加载:’/ system / lib / liblog.so’。 04-04 11:51:53.914 D / Mono(30832):DllImport加载库’/system/lib/liblog.so’。 04-04 11:51:53.914 D / Mono(30832):DllImport搜索:’/ system / lib / liblog.so’(’/ system / lib / liblog.so’)。 04-04 11:51:53.914 D / Mono(30832):搜索’__android_log_print’。 04-04 11:51:53.914 D / Mono(30832):探测’__android_log_print’。 04-04 […]

Xamarin Android链接无法访问文件

我有一个Xamarin Android项目,我试图使用Sdk和用户程序集链接。 如果我将Android项目设置为仅限Sdk Assembly Linking,则会成功创建并部署APK并且可以正常工作。 但是,当我设置Sdk和用户程序集链接时,没有其他更改,我只有在部署时才会收到以下错误。 该解决方案成功构建。 The “LinkAssemblies” task failed unexpectedly. System.IO.IOException: The process cannot access the file ‘\AppName\AppName.Android\obj\Release\android\assets\AppName.Core.dll’ because it is being used by another process. at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean […]

如何在同一页面上使用Xamarin.Form控件和本机控件

我想在我的原生Android页面控件中使用Xamarin.Form控件。 在我的Android原生页面中有没有办法在我的原生Android片段或LinearLayout中加载Xamarin.Form页面? 根据Xamarin的说法,这是可能的。 但我找不到如何实现这一目标。

如何在Xamarin表单工具栏和UINavigationBar中添加渐变

我正在为Android和iOS操作系统创建一个xamarin表单跨平台应用程序。 我必须在两个操作系统中添加一个渐变到AppBars(在android中称为ToolBar,在ios中称为UINavigationBar)是否有任何方法可以实现此目的。 请帮我应付任何事情。