【发布时间】:2014-12-15 21:40:06
【问题描述】:
每当我在 Xamarin 中运行我的 iOS 应用程序时,我似乎都会遇到此问题。
MonoTouch.Foundation.MonoTouchException has been thrown
Objective-C exception thrown. Name: NSInternalInconsistencyException Reason: Could not load NIB in bundle: ’NSBundle ... (loaded)' with name ‘RouteMeViewController'
我正在尝试使用 Objective C 库和 Binder 将 GoogleMapsViewController 替换为 RouteMeViewController。我的 AppDelegate 看起来像这样:
namespace ExampleApp.iOS
{
[Register ("AppDelegate")]
public partial class AppDelegate : UIApplicationDelegate
{
UIWindow window;
RouteMeViewController viewController;
public override bool FinishedLaunching (UIApplication app, NSDictionary options)
{
window = new UIWindow (UIScreen.MainScreen.Bounds);
viewController = new RouteMeViewController ();
window.RootViewController = viewController;
window.MakeKeyAndVisible ();
return true;
}
}
RouteMeViewController
namespace ExampleApp.iOS
{
public partial class RouteMeViewController : UIViewController
{
RMMapView MapView { get; set; }
public RouteMeViewController () : base ("RouteMeViewController", null)
{
}
public override void ViewDidLoad ()
{
base.ViewDidLoad ();
MapView = new RMMapView(View.Frame, new RMOpenStreetMapSource().Handle);
MapView.AutoresizingMask = UIViewAutoresizing.FlexibleDimensions;
if (UIScreen.MainScreen.Scale > 1.0)
MapView.AdjustTilesForRetinaDisplay = true;
Add (MapView);
}
}
}
非常感谢任何帮助或指导,谢谢!
【问题讨论】:
-
您有
RouteMeViewController.nib文件吗?它是否已编译并包含在您的 .app 中?如果是这样,那就是我们需要查看的RouteMeViewController源代码。
标签: c# ios xamarin.ios xamarin route-me