0
그래서 내 구문 호출을 DBManager
개체에서 분리하려고합니다. 다음은 내 통화 중 하나입니다.블록을 통과하여 DB 논리 분리
- (void)createMessageObject:(NSString*)text forConversation:(PFObject*)conversationObject withBlock:(PFBooleanResultBlock)block {
/////////////////////////////////
// First create the object
PFObject* messageObject = [PFObject objectWithClassName:kWSMessageClassKey];
[messageObject addObject:[PFUser currentUser] forKey:kWSMessageUserKey];
[messageObject addObject:text forKey:kWSMessageTextKey];
[messageObject addObject:[[WSWordlistManager shared] languageTarget] forKey:KWSMessageLanguageKey];
[messageObject saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error) {
if (succeeded) {
///////////////////////////////
// Now add it to the Conversation object
[conversationObject addObject:messageObject forKey:kWSConversationMessagesKey];
[conversationObject saveInBackgroundWithBlock:block];
}
}];
}
지금은 인앱 채팅/메시징 기능을 사용하고 있습니다. 따라서 위의 호출에서 새 Message
개체를 만들고이를 성공적으로 저장하면 기존 Conversation
개체에 추가합니다. 문제는 내 ViewController에서의 원래 호출에 있습니다.
[self createMessageObject:text forConversation:self.conversation withBlock:^(BOOL succeeded, NSError *error) {
if (succeeded) {
// PROBLEM HERE: HOW TO PASS BACK THE messageObject I CREATED IN THE DB CALL?
[self.objects addObject:messageObject];
[self.messages addObject:[[JSMessage alloc] initWithText:text sender:sender date:date]];
[self finishSend];
[self sendMessagePushFromUser:[PFUser currentUser] toUsers:self.friends messageObject:messageObject];
[self scrollToBottomAnimated:YES];
}
}];
그래서 제가 문제라고 생각하는 라인에 문제가 있습니다. Parse 호출에서 작성한 messageObject
에 액세스해야하지만이를 다시 전달하는 방법은 무엇입니까?
확인이 링크 http://stackoverflow.com/questions/21613642/how-do-i-change-objects-value - 매개 변수 - 내부 - 블록 – Pawan