我正面临一个问题,目前我正在使用xcode 5.0,当我从prefix.pch导入clasess时,它不会给appdelegate.h文件提供建议。但它给出了其他视图控制器的建议。我搜索了它,发现我们是否在prefix.pch中定义了宏,然后发生了这个问题。删除宏后仍然没有给appdelegate提出建议 Suggestios意味着如果我尝试写
@property(strong,nonatomic) UINavigationController *navControler;
写完@property(strong,nonatomic) UINav
xcode后没有给出建议。但是如果我从prefix.pch文件中删除所有import语句和宏,那么xcode会在appdelegate上提供建议。
答案 0 :(得分:2)
从我的观点来看,我不想找到解决方法,而是想对实际问题有所了解。
因此,当您想在.pch(预编译的头文件)中添加内容时,这意味着您希望在实际编译程序之前使用文件内容。建立。简单来说,pch中包含的头文件充当存根代码,基本代码,或者可以是用于完整使用的代码。
因此,如果您已将appDelegate.h
文件包含在.pch&在appDelegate.h
文件中编写一些代码,然后编译器尝试使用来自.pch的' appDelegate.h`作为预编译信息。并且可能导致Xcode后台处理无限期,这不允许在已经预编译的文件中显示下拉帮助。
对我看来,.pch中的app delegate.h
不是正确的地方。在程序中的任何地方,您都可以包含appDelegate.h
文件。然而,它也是糟糕的类设计方法的信号。
此外,如果您想添加#define
声明& .pch
中的其他宏则不是正确的方法。正确的方法是:
constants.h
#defines & macros
文件中添加constants.h
所有内容。#import "constants.h"
文件中添加.pch
。希望有所帮助。