Tag: xamarin.ios

在xmlns clr-namespace中找不到EventToCommandBehavior:Prism.Behaviors

我正在研究Xamarin.Forms项目。 在Prism 6.3之前,我使用了6.2和Corcav.Behaviors包。 我不需要传递参数,所以它工作得很好。 但是,在AppDelegate iOS项目中,我需要运行这一行: Corcav.Behaviors.Infrastructure.Init(); 我有一个评论: //添加以防止iOS链接器从已部署的包中剥离行为程序集。 现在EventToCommand被添加到6.3版本,所以我卸载了Corcav.Behaviors包并实现了简单的例子。 在Android中一切都很棒,但是iOS ..我有例外: 我想这是因为现在我错过了这一行: Corcav.Behaviors.Infrastructure.Init(); 我的例子: 查看 : 我的自定义网格: public class TestGrid : Grid { public event EventHandler OnTestTapped; public TestGrid() { var tgr = new TapGestureRecognizer { NumberOfTapsRequired = 1 }; tgr.Tapped += Tgr_Tapped; this.GestureRecognizers.Add(tgr); } private void Tgr_Tapped(object sender, EventArgs e) { OnTouchedEventArgs args […]

使用C#获取XML命名空间元素

我在使用命名空间解析xml文件时遇到了一些麻烦 XML格式 <fh:FlightHistory FlightHistoryId="271955988" DepartureDate="2012-08-16 00:30" ArrivalDate="2012-08-16 04:09" 我想用C#读取fh:FlightHistory属性,但我找不到任何解决方案。 提前致谢

如何在Xamarin中的视图控制器之间传递数据

我试图在我的第一个和第二个ViewController之间传递一些数据。 我已经像这样实例化了第二个视图控制器: RegistrationViewController registration = new RegistrationViewController(); 我将textfield的值设置为来自注册类的变量email,如下所示: registration.email = txtEmail.Text; this.NavigationController.PushViewController(registration, true); 然后在第二个ViewController我使用它像这样: public string email { get; set; } txtEmail.Text = email ; 可悲的是,我在电子邮件变量中没有值。 如何成功将数据传递给新的ViewController 。 更改控制器的代码: registration.email = txtEmail.Text; string password = txtPassword.Text; RegistrationViewController controller = this.Storyboard.InstantiateViewController(“RegistrationViewController”) as RegistrationViewController; this.NavigationController.PushViewController(registration, true); this.NavigationController.PushViewController(controller, true);

如何在MonoTouch中使用System.Json进行序列化

我的另一个问题似乎过于笼统,所以我想我会在细节上创建一个新问题。 抱歉,如果这被认为是不好的做法。 我正在尝试使用MonoTouch和System.Json命名空间将C#对象序列化为JSON字符串,这种方式不需要我自己下载对象。 那可能吗? 如果是的话,如何正确地做到这一点? 通过将JsonValue隐式地转换为字符串,int,等等,反序列化很有效。 此外,在层次结构中下降是没有问题的。 像这样: JsonValue json = JsonValue.Parse(jsonString); int mainValue = json[“mainValue”]; JsonValue subValues = json[“subValues”]; int subValue1 = subValues[“subValue1”]; 相反的情况只适用于元素类型(string / int / …)。 遗憾的是,其他对象无法转换为JsonValue / JsonObject。 只有两个整数,甚至不是非常简单的结构。 // This works JsonValue json = new JsonObject(new KeyValuePair(“mainValue”, 12345)); // Cannot (implicitly) convert type ‘MyObjectType’ to ‘System.Json.JsonValue’ MyObjectType myObject = new […]

MvvmCross UITextField自定义绑定

所以我试图在MvvmCross中为UITextField实现自定义绑定,几乎与软件键盘上的 Binding’GO ‘键一致 – 即尝试绑定文本字段以在点击完成按钮时自动触发事件键盘(因此绑定到ShouldReturn )。 我还需要绑定文本字段的EditingDidBegin和EditingDidEnd事件。 因为我绑定了多个事件,所以我创建了一个MvxPropertyInfoTargetBinding ,如下所示: public class MyTextFieldTargetBinding : MvxPropertyInfoTargetBinding { private ICommand _command; protected UITextField TextField { get { return (UITextField)Target; } } public MyTextFieldTargetBinding(object target, PropertyInfo targetPropertyInfo) : base(target, targetPropertyInfo) { TextField.ShouldReturn += HandleShouldReturn; TextField.EditingDidBegin += HandleEditingDidBegin; TextField.EditingDidEnd += HandleEditingDidEnd; } private bool HandleShouldReturn(UITextField textField) { if (_command == […]

使用AudioQueue和Monotouch静音录制

我在MonoTouch中编写了一个小程序,使用InputAudioQueue从我的iPhone 4s麦克风录制声音。 我将记录的数据保存在一个数组中,并将此缓冲区提供给我的音频播放器进行播放(使用OutputAudioQueue)。 播放时,它只是一些口吃的垃圾/静音。 我在播放前尝试用sin波填充缓冲区然后听起来不错,所以我猜问题出在录音中,而不是播放。 任何人都可以帮我看看有什么问题吗? (以下代码) public class AQRecorder { private const int CountAudioBuffers = 3; private const int AudioBufferLength = 22050; private const int SampleRate = 44100; private const int BitsPerChannel = 16; private const int Channels = 1; private const int MaxRecordingTime = 5; private AudioStreamBasicDescription audioStreamDescription; private InputAudioQueue inputQueue; private short[] […]

Fluent Bindings和UIButton标题

由于我的用户界面通常需要具有本地化字符串,因此我的视图模型提供了视图所使用的所有字符串。 这包括按钮上的标题等内容。 在iOS端,按钮标题通过SetTitle方法设置。 为了使视图模型string =>按钮标题映射起作用,MvvmCross做了一些神奇的绑定转换,以使其工作得很好。 假设我的视图中有一个名为Foo的UIButton,我想将其标题映射到View Model中的属性ButtonLabel。 知道以下工作以设置这样的绑定: this.AddBindings(new Dictionary() { {Foo, “Title ButtonTitle”} }); 可以使用MvvmCross中的Fluent Binding系统设置相同的绑定吗? 我一直在阅读MvvmCross源代码,但我还没有得到绑定代码。 以下内容不起作用(因为实际上按钮没有Title属性 – 它有一个SetTitle方法): var set = this.CreateBindingSet(); set.Bind(Foo).For(b => b.Title).To(vm => vm.ButtonTitle); set.Apply(); 有没有其他方法可以使用Fluent Bindings获得所需的结果?

如何在Xamarin中使用研究Kit框架

我正在使用researchKit创建一个健康应用程序。 我想在Xamarin中这样做,因为我已经有很多可以在Xamarin中使用的共享代码。 但是,研究Kit尚未整合到Xamarin中。 我正在考虑将框架绑定到我在Xamarin中的项目。 但我不知道该怎么做。 我是Xamarin开发的新手。 请帮忙!

Xamarin – 将图像转换为字节数组

我使用媒体插件从Android设备或iOS设备中拍摄或选择照片。 然后,我想使用LINQtoTwitter发布该图像。 为此,图像需要采用bytes []格式。 如何将我的图像转换为字节以便上传? 获取图像的代码 takePhoto.Clicked += async (sender, args) => { if (!CrossMedia.Current.IsCameraAvailable || !CrossMedia.Current.IsTakePhotoSupported) { await DisplayAlert(“No Camera”, “:( No camera avaialble.”, “OK”); return; } var file = await CrossMedia.Current.TakePhotoAsync(new Plugin.Media.Abstractions.StoreCameraMediaOptions { PhotoSize = Plugin.Media.Abstractions.PhotoSize.Medium, Directory = “Sample”, Name = “test.jpg” }); if (file == null) return; await DisplayAlert(“File Location”, file.Path, “OK”); […]

如何在Xamarin中强制本地化文化到en-US进行整个应用

如何强制Xamain – Android / iOS在美国英语文化中工作,无论用户设置如何。 我在我的应用程序中遇到的问题是,该应用程序仅支持美国/英国英语,但如果用户将语言首选项更改为西class牙语,德语等,则数字日期等格式将更改。 例如, 2.35将代表西class牙语,德语代表2,35 。 因此,如果用户尝试使用具有类似语言的应用程序,则应用程序将错过行为或崩溃。 在我尝试Convert.ToDouble(“2,35”);情况下会发生崩溃Convert.ToDouble(“2,35”); 或类似的。 所以我怀疑是, 在Xamarin中是否有可能将文化强制设置为en-US 。 可能在一个地方,否则我需要更改我执行转换的所有地方。 请帮忙。