2015-04-16 2 views
10

Последняя версия Parse (1.7.1) и Xcode (6.3) Я не могу автозаполнять блоки для API анализа. Это действительно раздражает. Кто-нибудь еще сталкивался с этой проблемой?Parse и Xcode: Блоки не будут автозаполнены.

Прежде чем, как и все остальные блоки, вы можете включить вкладку, чтобы выделить ее, а затем нажать enter.

 [query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) 
    { 

    }]; 

Теперь, когда я нажимаю войти, это происходит:

[query findObjectsInBackgroundWithBlock:(nullable PFArrayResultBlock(nullable)block 
+0

ли вы понять это? Обновлено сегодня, и я столкнулся с той же проблемой ... –

+2

@DavidJirman Пока нет. Я дам вам знать, если я что-то придумаю. – BlackMouse

+0

Кто-нибудь это понял? Это сводит меня с ума ... –

ответ

2

С новым обновлением разбором забирал возможность ввода и завершить блок. Я думаю, что это просто не хорошо. Но вот обходной путь. Эти блоки определены в PFConstants.h как этот

typedef void (^PFBooleanResultBlock)(BOOL succeeded, NSError *PF_NULLABLE_S error); 
typedef void (^PFIntegerResultBlock)(int number, NSError *PF_NULLABLE_S error); 
typedef void (^PFArrayResultBlock)(NSArray *PF_NULLABLE_S objects, NSError *PF_NULLABLE_S error); 
typedef void (^PFObjectResultBlock)(PFObject *PF_NULLABLE_S object, NSError *PF_NULLABLE_S error); 
typedef void (^PFSetResultBlock)(NSSet *PF_NULLABLE_S channels, NSError *PF_NULLABLE_S error); 
typedef void (^PFUserResultBlock)(PFUser *PF_NULLABLE_S user, NSError *PF_NULLABLE_S error); 
typedef void (^PFDataResultBlock)(NSData *PF_NULLABLE_S data, NSError *PF_NULLABLE_S error); 
typedef void (^PFDataStreamResultBlock)(NSInputStream *PF_NULLABLE_S stream, NSError *PF_NULLABLE_S error); 
typedef void (^PFStringResultBlock)(NSString *PF_NULLABLE_S string, NSError *PF_NULLABLE_S error); 
typedef void (^PFIdResultBlock)(PF_NULLABLE_S id object, NSError *PF_NULLABLE_S error); 
typedef void (^PFProgressBlock)(int percentDone); 

Так что ваш код будет

[query findObjectsInBackgroundWithBlock:^(NSArray *PF_NULLABLE_S objects, NSError *PF_NULLABLE_S error) 

Здесь^(объекты NSArray * PF_NULLABLE_S, NSError * PF_NULLABLE_S ошибка) является PFArrayResultBlock.

Чтобы ускорить работу, вы можете нажать кнопку PFUserResultBlock, чтобы найти определение и скопировать.

+0

Вы хотите изменить определения в PFConstants? Я не просто уверен, что понимаю, как поможет копирование? Не можем ли мы изменить результат, чтобы мы могли завершить блок? –

0

У меня есть исправление, с небольшими изменениями в заголовках на синтаксическом разборе, это просто временное взломание, чтобы заставить блоки работать, я сброшу эти изменения после того, как я загрузил новую сборку. проверить это на разборе 1.7.4 и Xcode 6.3.2

в PFConstants.h, удалить все экземпляр "PF_NULLABLE_S" и в PFQuery.h, удалить все экземпляр "PF_NULLABLE", "PF_NULLABLE_S", "PF_ASSUME_NONNULL_BEGIN" и «PF_ASSUME_NONNULL_END»

вы получите предупреждение «Ошибка обнуления», но на моих тестах отлично работает, также я возвращаю эти заголовки при загрузке новой сборки.

+0

Это не работает для меня. – BlackMouse

+0

Это тоже не работает для меня; это очень расстраивает, что на это не так много четких ответов. Помогите! –

0

Как я столкнулся с проблемой, нужно было использовать автокомпонент старого стиля ^(BOOL succeeded, NSError *error) и создать фрагмент. Способ создания фрагмента состоит в том, чтобы выбрать текст и перетащить его в библиотеку фрагментов (вы можете его использовать).

Я знаю, что это не «Fix», но он делает свою работу, по крайней мере :)

0

Попробуйте его реализации с cocoapods и автозаполнения будет работать.

Я попытался импортировать Parse SDK путем перетаскивания, автозаполнение не будет работать, но код будет запущен. Но когда вы добавите библиотеку через pod install, она будет работать.

см Installtion раздел cocoapod здесь

http://shaideru.com/?p=223

+0

Я использую стручки и все еще не работает. –

Смежные вопросы