Tag: xamarin.ios

如何将不可见的ViewModel添加到MvvmCross中的导航堆栈

我有以下应用情况。 在启动时,我想转到“List”ViewModel作为启动视图模型/视图。 但我希望用户能够选择BACK来转到“菜单”ViewModel。 如何在MvvmCross中完成?

在运行时从iOS上的本机方法创建委托

这是MonoTouch特有的问题。 我目前正在为OpenGL开发一个包装器,它与OpenTK这样的包装器完全不同。 此包装器用于使用OpenGL实现更快的开发。 方法不是这样声明的: void glGenTextures(Int32 n, UInt32[] textures); ,它们被声明为void glGenTextures(Int32 count, [Out]TextureHandle[] textures) ,其中TextureHandle是一个与UInt32大小相同的结构。 题 在Windows上,我可以使用GetProcAddress , wglGetProcAddress和Marshal.GetDelegateForFunctionPointer从方法指针创建委托,但如何在iOS上使用MonoTouch执行此操作。 有什么方法可以解决这个问题,还是monotouch不支持?

如果在xamarin表格中选择它,如何清除选择器?

我有两个选择器。 第二个选择器取决于第一个选择器。 两个选择器都是从Service绑定的。 我正在使用字典对象将数据绑定到选择器。 我没有使用MVVM模式。 第一个服务调用,其中绑定第一个选择器的字典对象。 然后从该字典对象中填充第一个选择器。 那时候第二个选择器是空的。 在第一个选择器调用服务的selectedIndexChange事件中绑定第二个选择器的字典对象。 现在从字典对象中将值填充到第二个选择器。 (如果已经选择器有数据然后放Picker.Items.clear() ) 现在如果我从第二个选择器中选择一些值并更改第一个选择器的值,那么它会在Picker.Items.clear()中给出错误 System.ArgumentOutOfRangeException:索引超出范围。 必须是非负数且小于集合的大小。 参数名称:index 全球宣言: Dictionary DicObjActivityType; Dictionary DicObjSelfActivity; First Picker selectedIndexChange事件 private async void PckrActivityType_SelectedIndexChanged(object sender, EventArgs e) { if (sender as Picker == null) return; else { var objActivityType = sender as Picker; var Key = DicObjActivityType.FirstOrDefault(x => x.Value == objActivityType.Items[objActivityType.SelectedIndex]).Key; […]

Xamarin.iOS上的SignalR – 随机无法调用Hub方法

我有一个在Azure中运行的简单Hub ,我在Windows中的控制台应用程序中完美地工作。 我刚刚构建了一个简单的测试Xamarin.iOS应用程序,它给出了一些奇怪的行为。 随机在LTE / Wifi或模拟器/设备上 – 调用集线器方法失败, There was an error invoking Hub method X 随机约50% – 一切都像Windows上的控制台应用程序一样完美 – 两者甚至互相发送消息 我在iPhone 5S和iPhone 4S上测试了这个设备。 关于为什么会这样的想法? 我在版本2.0.0上使用Portable NuGet包。 更新: 这是我启用跟踪时得到的结果(我清空了我的域名): 2013-11-25 07:47:48.204 MyApp[5163:80b] 13:47:48.1865420 – null – ChangeState(Disconnected, Connecting) 2013-11-25 07:47:49.025 MyApp[5163:6b03] 13:47:49.0247930 – d84a25b3-b426-4f0b-b4bc-7d170e3c1bd9 – SSE: GET http://mydomain.cloudapp.net/signalr/connect?transport=serverSentEvents&connectionToken=pVF6LN7KBOem7Ng2hrhx6dSByFe%2BxCr4u6RlY5V%2FtKf%2BHmOoJD5DfVpMySiUuDOaiIPlHI%2FtliqvuddvcDxnZQqi9tIYAxuyZOjYSG%2B9%2Fnx%2FQ%2B6m&connectionData=[{“Name”:”MainHub”}]&noCache=c3d54c1d-ee78-49cc-85b4-2c87a024c32a 2013-11-25 07:47:49.203 MyApp[5163:6b03] 13:47:49.2023660 – d84a25b3-b426-4f0b-b4bc-7d170e3c1bd9 – […]

如何在MonoTouch中使用UIActivityViewController

我试图使用以下代码从MonoTouch访问UIActivityViewController : var textToShare = new NSString(“hallo there”); var activityItems = new NSObject[] {textToShare}; var excludedActivityTypes = new NSString[] { new NSString(“UIActivityTypePostToWeibo”), new NSString(“UIActivityTypeMessage”) }; var activityViewController = new UIActivityViewController(activityItems, null); activityViewController.ExcludedActivityTypes = excludedActivityTypes; this.PresentViewController(activityViewController, true, null) 将显示iOS操作表,但不排除指定的活动。 有什么建议问题是什么? 有没有MonoTouch样品?

更改Xamarin Forms XAML按钮的isVisible属性

我想在Xamarin Forms ContentPage中动态显示/隐藏按钮。 我的XAML代码中有两个按钮: START STOP 对应的C#代码: public partial class PanicPage : ContentPage { private Button startBtn; private Button stopBtn; public PanicPage () { InitializeComponent (); startBtn = this.FindByName (“start_btn”); stopBtn = this.FindByName (“stop_btn”); } private void startPanic(object sender, EventArgs args){ Device.BeginInvokeOnMainThread (() => { startBtn.IsVisible = false; stopBtn.IsVisible = true; // DOESN’T WORK, button […]

Xamarin iOS C#在UIWebView中打开Safari中的链接

我在Xamarin使用C#编写带有UIWebView的iPhone应用程序。 默认情况下,Web视图中的嵌入式链接会在同一Web视图中打开Web页面。 我希望他们喜欢在新的safari浏览器实例中启动链接页面。 在X-Code中已经回答了目标C,但据我所知,Xamarin C# webView.LoadHtmlString(html, new NSUrl(Const.ContentDirectory, true)); 提前致谢 亚当

Xamarin.Forms按钮的内容

我正在尝试将自定义内容添加到Xamarin Forms中的按钮。 默认情况下,按钮创建如下: 但我想创建此按钮的自定义内容。 通常使用WPF,我会这样做: 但这不起作用。 我也在寻找一个DataTemplate属性,但还没有找到它。 如何在Xamarin.Forms中做到这一点?

MonoGame阅读触摸手势

我目前正在使用梦幻般的monogame框架编写游戏。 我无法正确对触摸输入作出反应。 当用户水平或垂直拖动时,我想每次拖动执行一次动作。 问题是每次拖动都会多次发出手势。 这是我的代码: var gesture = default(GestureSample); while (TouchPanel.IsGestureAvailable) gesture = TouchPanel.ReadGesture(); if (gesture.GestureType == GestureType.VerticalDrag) { if (gesture.Delta.Y 0) return new RotateRightCommand(_gameController); } if (gesture.GestureType == GestureType.HorizontalDrag) { if (gesture.Delta.X 0) return new RotateRightCommand(_gameController); } 为了本示例的目的,我已将所有此代码移动到一个块中。 然后返回的RotateRightCommand或RotateLeftCommand由调用代码执行,该代码在屏幕上旋转对象。 整个代码块在monogame的更新循环中运行。 我认为我在重置触摸输入方面缺少一些东西,这就是我为一次拖动返回3或4个RotateCommands的原因。 我究竟做错了什么?

可移植类库配置文件78缺少与属性相关的方法/属性

在我的PCL核心项目(WP8,Android,iOS,Xamarin,MvvmCross)中,我使用自定义属性。 Type.GetCustomAttributes()扩展方法让我检查使用的属性。 使用PCL Profile104这很有效。 但是因为我想使用async / await,我需要使用PCL Profile78(和.NET 4.5) 问题:看起来GetCustomAttributes()和Attributes属性在Profile78中不可用。 为什么?? 注意:我正在研究解决方法,方法是创建一个PCL Profile 104类库并包装GetCustomAttributes(),然后从我的PCL Profile78库中引用该库。 但是似乎不支持扩展方法…… 示例代码: public Pcl78Class() { Type t = this.GetType(); var attributes = t.Attributes; var customAttributes = t.GetCustomAttributes(true); // another weird thing: Why is VS CodeCompletion telling me it knows CustomAttributeExtensions class and methods? //System.Reflection.CustomAttributeExtensions.GetCustomAttributes(t); }