Tag: xamarin

SingamaR在Xamarin.Forms

我正在尝试为SignalR创建一个Xamarin.Forms PCL客户端。 我发现每个教程都是如何将SignalR添加到Xamarin.Android或Xamarin.iOS。 如何将SignalR添加到Xamarin.Forms项目? 我应该创建一个单独的PCL,称之为“代理”,然后在Xamarin.iOS,Android和Windows Mobile项目中使用此PCL吗? 如果1),我是否应该在每个项目中添加SignalR(除了PCL,我真的在使用它)? 我应该在创建Xamarin.Forms解决方案时添加默认创建的PCL吗? 感谢帮助, 这是我得到的问题:我有一个完全工作的Xamarin.Forms PCL项目。 我删除了所有窗口的东西。 我刚离开PCL,iOS和Android项目。 有用! 我只添加了CocosSharp,但不使用它。 平原,空虚,从未接触过Xamarin.Forms。 然后我将SingalR添加到PCL项目中。 顺便说一句,跑步! 但是当我添加JUST这一行时: var connection = new HubConnection(“http://localhost:52128”); 它甚至没有编译。 我收到错误: 加载程序集时出现exception:System.IO.FileNotFoundException:无法加载程序集’Newtonsoft.Json,Version = 6.0.0.0,Culture = neutral,PublicKeyToken = 30ad4fe6b2a6aeed’。 也许它在Mono for Android配置文件中不存在 我完全迷失了。 我试过了: 在PCL上安装nuget – 错误 在每个项目上安装 – 错误 创建新PCL,在那里实现该行,将其添加为主PCL的引用。 从第二个PCL调用方法 – 错误。

Caliburn Micro Xamarin的数据绑定操作顺序

什么是Caliburn.Micro Xamarin Android(Mono.Android)中的数据绑定的“操作顺序”(OOP)? PS:解释/比较Caliburn Micro Standard / WPF,Caliburn Micro Android和Caliburn Micro iOS(即Caliburn.Micro Xamarin)中的绑定方式的教程将非常有用,并且是对Caliburn Micro Xamarin的一个很好的介绍。 对于常规的Caliburn.Micro,OOP for Binding是(如果我错了,请纠正我): 在ViewModel中声明Field 在字段集上:调用NotifyOfPropertyChange(..) 使用XAML属性x:Name将View绑定到ViewModel 我已经检查了示例项目Hello.Xamarin和HubBrowser ,我想我有点想法它是如何工作的,但看起来需要很多设置。 对于Caliburn.Micro Xamarin Android是绑定OOP有点像……? 扩展NotifyPropertyChanged方法。 不知道为什么……也许这对Android有用吗? 我们生成一个名为NotifyPropertyChangedExtensions的静态类 在ViewModel中声明字段(与标准CM相同) 在字段集上:调用NotifyOfPropertyChange(..) (与标准CM相同) 为所有View小部件提供唯一的id android:id 在视图(活动)创建上:以某种方式将View小部件绑定到ViewModel字段?

Xamarin.Forms Google API使用身份提供程序对用户进行身份validation

我仍然习惯了Xamarin.Forms而且我处于非常基础的水平。 我为我的问题经历了很多文章,但最终无法解决它。 所以… 目前我正在尝试在我的Xamarin.Forms应用程序中添加Google身份validation,该应用程序使用Droid和iOS(无WP)。 到目前为止,我从这里跟随指南。 我正在使用Xamarin.Auth对Google进行身份validation。 这是我的源代码的一部分。 private async void GoogleSheetsButton_Tapped() { string clientId = null; string redirectUri = null; if(Device.RuntimePlatform == Device.iOS) { clientId = Constants.iOSClientId; redirectUri = Constants.iOSRedirectUrl; } 否则if(Device.RuntimePlatform == Device.Android) { clientId = Constants.AndroidClientId; redirectUri = Constants.AndroidRedirectUrl; } var authenticator = new OAuth2Authenticator( 的clientId, 空值, Constants.Scope, 新的Uri(Constants.AuthorizeUrl), 新的Uri(redirectUri), 新的Uri(Constants.AccessTokenUrl), 空值, 真正); […]

Android C#Xamarin编译错误

我正在和Xamarin一起工作; 它允许C#应用程序在Android上运行。 但是,我收到以下错误: 错误1“AndroidComputeResPaths”任务不支持“ResourceNameCaseMap”参数。 validation该任务上是否存在该参数,它是一个可获取的公共实例属性。 AndroidApplication1 我用Google搜索了错误,但只有1个结果没有回答。 我尝试了Visual Studio 2012和2010,库存Android应用程序模板,我仍然得到错误。

我应该使用哪个命名空间和程序集在共享项目中声明转换器

我应该使用哪个命名空间和程序集在Xamarin中的共享项目中声明转换器。 对于这个资源 如果我选择windowsPhone作为启动项目这个声明工作: xmlns:local=”clr-namespace:LeMagXam;assembly=LeMagXam.WinPhone” 如果我选择Android作为启动项目这个声明工作: xmlns:local=”clr-namespace:LeMagXam;assembly=LeMagXam.Android” 现在我应该使用什么来使它适用于MixedPlateform,我试过这个但没有成功: xmlns:local=”clr-namespace:LeMagXam;assembly=LeMagXam” 先感谢您。 编辑有我的完整代码,以便更好地理解 <Image Source="{Binding Category.ImageArticleTitle.Source}" HorizontalOptions="Start" WidthRequest="{Binding , Converter={StaticResource widthConverter}, ConverterParameter=150}" WidthConverter.cs namespace LeMagXam { public class WidthConverter : IValueConverter { #region IValueConverter implementation public object Convert (object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { return (double)parameter * App.RatioWidth; } public object ConvertBack (object value, Type […]

将AutomationID与ListView一起使用

我正在尝试将automationId附加到listview中的项目。 理想情况下,通过将项目名称绑定到显示的项目。 当我到达页面时,代码正在部署但没有运行,是否有人找到了一个很好的解决方法来绑定ID? 从长远来看,我希望将它与Xamarin Forms能力一起使用,滚动可以滚动到标记的项目,但不滚动到显示的文本。

在Xamarin.Forms中处理对象

我正在寻找在Xamarin Forms应用程序中处理对象的正确方法。 目前我正在使用XAML和MVVM编码风格。 然后从我的视图模型中,我通过内置服务定位器( DependencyService )获得对一次性对象的引用。 理想情况下,我应该能够从我的视图模型中调用对象上的Dispose(),但是附加到ContentPage.OnDisappearing和NavigationPage.Popped等其他解决方案也是可行的。

Xamarin:如何从iOS库项目加载图像

我有一个用MvvmCross设计的Xamarin项目。 有子项目: 核心(PCL) ViewModel(PCL) iOS(可执行文件) 如果我将图像添加到我的iOS项目(Resoureces / Images / test_image.png),那么我可以使用以下代码加载它: UIImage image = UIImage.FromBundle(“Images/test_icon.png”); 现在,我想使用一个新的子项目 控件(iOS库) 该库应该加载图像。 我在Controls(Resoureces / Images / test_image.png)中添加了一个图像 但我无法在Controls proj中加载此图像。 我的问题:如何从iOS库加载图像? public class MyButton : UIButton { public MyButton () : base() { Initialize (); } void Initialize() { // load image from bundle UIImage image = UIImage.FromBundle(“Images/test_icon.png”); // image is […]

如何从Xamarin Forms for Android中的按钮视图中删除额外的填充?

Xamarin Forms上的按钮视图似乎在部署到Android时会应用额外的填充。 我在我的Android项目下设置了Resources / values / styles.xml,默认情况下所有间距,填充和边距都为0,但仍然应用了额外的填充: 0.0px 0.0 0.0px 0.0px 0.0px 请看下面的比较,看看我在说什么(左边是iOS,右边是Android)。 请注意iOS中的视图如何相互冲洗(应该如此),而Android中存在不必要的额外空白。 显示器由绝对和堆叠布局,几个按钮和一个标签(长标签)组合而成。 在iOS示例中,不要担心没有大小和排列的东西; 这是故意的。 iOS显示器正是我希望它们看起来的样子。 理想情况下,我想要一个Android风格或一个简单的“一刀切”的代码片段,我可以使用它来摆脱Android的固定间距。 边距,间距和填充在两个设备上以相同的方式以编程方式设置,因此不应该是问题的根源。 请注意,我正在使用C#和Xamarin Forms – 而不是XAML。 因此,请提供适用于两者的答案,或至少从纯粹的程序化Xamarin表单实现开始。 这是另一个例子(左边是iOS,右边是Android)。 最外面的布局是一个网格,包含六个非布局视图(两个按钮,两个标签和两个条目)以及底部的堆栈布局(同样包含一个按钮,一个标签和一个条目)。 你可以从颜色的差异看出一切都正确排列,除了按钮。 仅使用视图边距设置对齐; 默认间距和填充都被清零(从Android风格,见上文)。

SQLite.NET – System.NotSupportedException:无法编译:参数

我在Xamarin iOS项目中使用SQLite.NET Async( http://www.nuget.org/packages/SQLite.Net.Async-PCL/ ),但我在使用表谓词查询时遇到问题。 无论何时我使用下面的Get方法,这很简单,我收到一个exception,表达式无法编译,System.NotSupportedException:无法编译:参数。 但是,如果我使用低级查询,就像使用GetQuery方法一样,它可以正常工作。 在我的表的定义或阻止sqlite.net编译表达式的方法中,我做错了吗? public interface IDataModel { [PrimaryKey, AutoIncrement] int Id { get; set; } } public class BaseDataModel : IDataModel { [PrimaryKey] public virtual int Id { get; set; } } [Table(“Event”)] public class EventDataModel : BaseDataModel { public string Name { get; set; } public int OrganizationId { […]