Tag: mvvmcross

iOS黑屏和MissingMethodException:未find方法:'System.Type.op_Equality'

我开始使用MvvmCross创build一个应用程序。 到目前为止,我有一个适用于Android和WP运行的版本。 不幸的是,为iOS创build应用程序并不容易。 在模拟器中运行iOS应用程序时,我只能看到一个黑屏。 在MonoDevelop的应用程序输出中看到以下exception: 2013-01-07 10:42:20.506 BestSellersTouch[319:21e03] mvx: Diagnostic: 0.09 Exception masked MissingMethodException: Method not found: 'System.Type.op_Equality'. at Cirrious.MvvmCross.Touch.Views.Presenters.MvxTouchViewPresenter.CreateView (Cirrious.MvvmCross.Views.MvxShowViewModelRequest request) [0x00000] in <filename unknown>:0 at Cirrious.MvvmCross.Touch.Views.Presenters.MvxTouchViewPresenter.Show (Cirrious.MvvmCross.Views.MvxShowViewModelRequest request) [0x00000] in <filename unknown>:0 at Cirrious.MvvmCross.Touch.Views.MvxTouchViewDispatcher+<>c__DisplayClass4.<RequestNavigate>b__3 () [0x00000] in <filename unknown>:0 at Cirrious.MvvmCross.Touch.Views.MvxTouchUIThreadDispatcher+<>c__DisplayClass1.<InvokeOrBeginInvoke>b__0 () [0x00000] in <filename unknown>:0 2013-01-07 10:42:20.508 BestSellersTouch[319:21e03] Application windows are expected […]

MvvmCross iOS:如何绑定MapView注释跳转到另一个视图?

当标注附件button被点击时,如何绑定MapView的注释以切换到不同的视图? 如何实现注释的CalloutAccessoryControlTapped方法? 或者什么是最好的办法呢? 这是我的代码: [Register("MapView")] public class MapView : MvxViewController { public override void ViewDidLoad() { Title = "Map"; base.ViewDidLoad(); var mapView = new MKMapView(new RectangleF(0, 0, 320, UIScreen.MainScreen.Bounds.Height – 20 – 44)) { MapType = MKMapType.Standard, ZoomEnabled = true, ScrollEnabled = true, Delegate = new MapDelegate(), }; View.AddSubview(mapView); var center = new CLLocationCoordinate2D(ViewModel.CurrentLat, ViewModel.CurrentLong); […]

从哪个类inheritance绑定的表源

我使用Xamarin和mvvmcross,以及最终绑定到可观察集合的表格。 这个video是非常丰富的如何创build自定义单元格,但似乎是过时的。 大约42分钟,Stuart为他的表格创build了一个源自MvxSimpleBindableTableSource的数据源,但是这个类似乎并不存在,或者至less我找不到它。 那么用mvvmcross绑定到UITableView的“最佳”方法是什么? 另外,我在一个普通的MvxViewController中使用了一个UITableView,因为我似乎无法得到MvxTableViewController来处理一个xib, 这个问题似乎表明目前是不可能的。

MVVMCross iOS:当切换到不同的View模型时,如何将自定义转换绑定命令

对于MVVMCross iOS,我怎样才能使用不同的TransitionalStyle,如FlipHorizo​​ntal风格,而不是使用“ShowViewModel”的默认滑动效果? [Register("SearchResults")] public class SearchResultsView : MvxTableViewController { public override void ViewDidLoad() { Title = "List"; base.ViewDidLoad(); var mapButton = new UIButton(new RectangleF(0, 0, 65, 30)); mapButton.SetBackgroundImage(UIImage.FromBundle("images/map_btn.png"), UIControlState.Normal); mapButton.TouchUpInside += MapButtonClicked(); var rightButton = new UIBarButtonItem(mapButton); NavigationItem.RightBarButtonItem = rightButton; var bindings = this.CreateBindingSet<SearchResultsView, SearchResultsViewModel>(); //bindings.Bind(mapButton).To(x => x.ShowMapCommand); //how to do with binding command? bindings.Apply(); […]

MvvmCross ViewModel从左边过渡

我正在使用MvvmCross开发iOS应用程序。 在我的意见之一,我有一些基本的报表数据显示在一个tableview。 当触摸表格行时,通过调用ShowViewModel传递一个Dictionary中的一些参数来显示包含详细报告的新视图。 这工作正常。 当用户向左或向右滑动时,应用程序需要显示原始列表中下一个或上一个项目的详细报告。 我这样做是通过更新一些参数并再次调用ShowViewModel。 这背后的逻辑工作正常。 我的问题; ShowViewModelanimation从右侧进入的新视图。 当用户向左滑动时,这是完美的。 然而,当向右滑动时,似乎违反了直觉。 我怎样才能使ShowViewModelanimation或从左侧过渡?

MvvmCross:如何在iPhone上的iOS 7中强制MvxViewController的特定方向

在我的iOS 7应用程序中,除了需要在“video播放器”视图上允许“横向”方向外,我只允许“支持的设备方向”上的“纵向”用于整个应用程序。 我怎样才能用MvvmCross或MvxViewController? 我试图设置这些ShouldAutorotate(),GetSupportedInterfaceOrientations()方法,它什么也不做。 它保持locking在“video播放器”视图的肖像模式。 有谁知道什么是在视图上设置方向的正确方法? public class VideoPlayerView : MvxViewController { public override bool ShouldAutorotate() { return true; } public override UIInterfaceOrientationMask GetSupportedInterfaceOrientations() { return UIInterfaceOrientationMask.AllButUpsideDown; } public override UIInterfaceOrientation PreferredInterfaceOrientationForPresentation() { return UIInterfaceOrientation.LandscapeLeft; } public override void ViewDidLoad(bool animated) { Title = "Video"; base.ViewDidLoad(animated); } } 更新:我想出了如何解决这个问题。 步骤1)对于mvvmcross,您必须设置一个新的ViewPresenter从MvxModalNavSupportTouchViewPresenterinheritance 步骤2)用下面的代码创build一个从UINavigationControllerinheritance的新的导航控制器 public override bool ShouldAutorotate() […]

MvvMCross导航回多个视图模型/截断导航堆栈

MvvMCross有关于导航的两个问题。 我怎样才能返回到导航堆栈上的视图模型? 分别:如何返回指定数量的视图模型? 我如何截断导航堆栈? 例如:堆栈上的A | B | C ,导航到D使堆栈看起来像: D

使用AutoLayout在不同高度的两列中堆叠

瞄准iOS 8.1 我正在使用AutoLayout在TableCell中布置许多标签。 其中一些标签是可选的,一些可以包装他们的文本。 它们分成两个“列”,这些列仅仅是TableCell的ContentView中的两个UIViews。 我的约束以编程方式应用。 第二次更新 没有下面的SwiftArchitect的答案 ,我不会解决这个问题,并已经接受了他的答案。 但是,因为我的代码都在代码中,所以在自定义表格单元格中,我还在下面添加了一个单独的答案 UPDATE 在试图阻止标签伸展到比他们需要的更大的尺寸时,我之前将SetContentHuggingPriority和SetContentCompressionResistancePriority设置为1000,因为我SetContentCompressionResistancePriority这是相当于说“ 我希望标签拥抱其内容到其确切的高度我不希望它被垂直压缩 “这个请求显然没有被AutoLayout所遵守,你可以在下面的红色和粉红色的例子中看到。 this.notesLabel.SetContentHuggingPriority(1000, UILayoutConstraintAxis.Vertical); this.notesLabel.SetContentCompressionResistancePriority(1000, UILayoutConstraintAxis.Vertical); 我删除了这些优先级的设置,标签不再被压扁,这是我的原始问题。 当然,现在某些标签被拉伸超出了他们需要的高度。 为什么删除拥抱和压缩优先级解决了我的问题? 我怎样才能得到红色框中的文本(红框不是以后添加的单元格的一部分)不扩展,而不会回到我以前的问题? 这里有几个截图,当压缩和拥抱的优先级设置时,它看起来像什么样子。 背景颜色用于debugging 一般的问题是,包含视图(紫色和紫色)​​正在缩小自己的大小。 正如你可以看到在顶部的“优先级3”正在被切断,因为左列容器不需要更高。 在下面的例子中没有优先级标签,但是EventDate被压扁了。