意外的接口名称 - Xcode

问题描述:

我正在从iOS照片库检索照片的应用程序。选择照片时,我想定位一个.xib以显示可以编辑所选照片的​​界面。意外的接口名称 - Xcode

然而,编译失败因这个错误:

"Unexpected interface name 'imageEditorView': expected expression"

下面是代码:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions: (NSDictionary *)launchOptions 
{ 
    [self dismissViewControllerAnimated:YES completion:^{ 
     [self.parentViewController presentViewController:imageEditorView: animated:YES completion:nil]; 
    }]; 
} 

我有两个控制器的.h文件正确导入的所有外部组件。任何帮助将不胜感激。

+0

你用这段代码试图做什么?当应用程序启动你正在解雇? – 2013-04-25 06:55:39

+0

你有答案吗? – Balu 2013-04-25 07:04:51

+0

self.parentViewController?在应用程序委托? – geraldWilliam 2013-04-25 07:18:31

有几个问题与您的代码:

  • imageEditorView是一个类的名称。这不会用作消息参数。你需要传递一个对象的引用。

  • imageEditorView之后,在animated之前,您有一个额外的冒号。你需要删除它。

  • 发送dismissViewControllerAnimated:completion:self里面application:didFinishLaunchingWithOptions:没有任何意义。要么你在应用程序委托中定义了这个方法,它不理解dismissViewControllerAnimated:completion:消息,或者你正在视图控制器中定义它,在这种情况下application:didFinishLaunchingWithOptions:将不会被调用(除非你编写代码明确调用它,这会也很不寻常)。

基于所有这些错误,我怀疑你根本不了解Objective-C或iOS编程。你需要通过一些教程来学习基础知识,因为这些都是非常基本的错误。

尝试这样,

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions: (NSDictionary *)launchOptions 
    { 
     [self dismissViewControllerAnimated:YES completion:^{ 
      [self.parentViewController presentViewController:imageEditorView: animated:YES completion:nil]; 
     // in your code problem must be here 

     }]; 
    } 
imageEditorView *svc = [[imageEditorView alloc]initWithNibName:@"imageEditorView" bundle:nil]; 
[self presentViewController:svc animated:YES completion:NULL]; 

你的错误是在这里:

[self.parentViewController presentViewController:imageEditorView: animated:YES completion:nil]; 
----------------------------------------------------------------^ 

你应该使用这样

[self.parentViewController presentViewController:imageEditorView animated:YES completion:nil]; 
+0

冒号不会导致他引用的错误。他引用的错误发生是因为“imageEditorView”是类名,而不是变量名。如果他将其更改为变量名称,那么他将得到错误“使用未声明的标识符”动画'“(由于冒号)。 – 2013-04-25 07:19:40