我在OSX El Capitan 10.11.4上为iOS设计了一个简单的全新Objective-C项目。我正在使用Cocoapods,因此我使用以下3个pod创建了我的Podfile:Firebase,UALogger和AFNetworking 3.0。我安装了我的Pod,然后打开了.xcworkspace。到目前为止一切都很好。
我有一个View Controller和一个子类UITableView,在VC的.m
中,我导入了Firebase,UALogger,AFNetworking和我的tableview:
// MyViewController.m
#import "MyTableView.h"
#import <AFNetworking.h>
#import <Firebase/Firebase.h>
#import <UALogger/UALogger.h>
...
@property (strong, nonatomic) MyTableView *tableView;
然后我转到我的viewDidLoad
方法,尝试执行Firebase的简单alloc / init并创建我的tableview:
// MyViewController viewDidLoad
Firebase *firebase = [[Firebase alloc] initWithUrl:@"myurl...";
self.tableView = [[MyTableView alloc] init];
以下是发生的事情:
Firebase
类未自动建议,因此我必须在两个位置手动输入,但initWithUrl...
令人惊讶的自动建议。
UALogger
始终按预期工作 - 也就是说,只要我开始输入UA...
,就会建议相应的完成次数。
AFNetworking类不是自动建议的,我必须手动输入,但与Firebase一样,方法名称是自动建议。
当我开始创建我的tableview时,不会自动建议MyTableView
类。这一点并不奇怪,但其中值得注意的部分是它是我自己的文件,而不是pod。
据我所知,Apple标准库方法都是正常的自动建议。
而且,真的让我更加困惑:
Firebase
将自动提出。但是,一旦构建完成,如果我退格然后重新键入字母 F ,则不再是建议。 AFNetworking或其他人也不会发生同样的效果。要明确:一切都符合,我的应用程序运行完美,没有任何警告,也没有错误。
到目前为止我尝试了什么:
User Header Search Paths
设置为$(SRCROOT)/**
(以及"$(SRCROOT)/**"
和$(SRCROOT)
)并将其设置为recursive
Header Search Paths
(并在我清除它们之前重置为它们)Always Search User Paths
设为Yes
这些都没有用,现在我在这里。
好消息是,假设这不是什么大不了的事 - 我只需要输入更多信息并将我的小手指放在骨头上。
坏消息是,我不知道为什么会发生这种情况,必须输入更多信息并将我的小手指放在骨头上。
如果有解决方案,我还没试过,请告诉我。感谢。
答案 0 :(得分:0)
尝试清理项目并删除派生数据。 您可以强制Xcode通过按ctrl按钮+空格键手动显示建议。