My TextView замерзает после отправки 2-3 сообщений. Моя версия iOS - 10.2.1, а тестовое устройство - iPhone 6Plus, версия JSQMessagesViewController - 7.3.4, а код - в Obj-C. Я осуществил следующий метод:JSQMessagesController textview stuck
-(void)didPressSendButton:(UIButton *)button withMessageText:(NSString *)text senderId:(NSString *)senderId senderDisplayName:(NSString *)senderDisplayName date:(NSDate *)date
{
[self addMessagewithId:senderId name:senderDisplayName date:date andText:text inArray:_messages inGroup:nil];
NSDateFormatter *dateF = [[NSDateFormatter alloc] init];
dateF.dateFormat= @"yyyy-MM-dd hh:mm:ss zzzz";
NSString *dateStr = [dateF stringFromDate:date];
NSDictionary *mdata = @{@"text": text, @"senderId":senderId, @"displayName": senderDisplayName, @"date":dateStr};
// Push data to Firebase Database
[[[_rootRef child:@"messages"] childByAutoId] setValue:mdata];
[self finishSendingMessageAnimated:NO];
_isTyping =false;
[self sendIsTyping];
}
-(void)addMessagewithId:(NSString*) senderId name:(NSString*) name date:(NSDate*)date andText:(NSString*) text inArray:(NSMutableArray*)array inGroup:(dispatch_group_t)group1
{
JSQMessage* message = [[JSQMessage alloc] initWithSenderId:senderId senderDisplayName:name date:date text:text];
[array addObject:message];
if (group1) {
dispatch_group_leave(group1);
}
}
Но после вызова
[self finishSendingMessageAnimated:NO];
TextView начинается замораживание и курсор остается там, где текст заканчивается. Это время замерзания увеличивается, когда пользователь отправляет больше сообщений. Пожалуйста помоги.
Мы мало что можем сделать с предоставленной вами информацией. Не могли бы вы дать нам большую выборку вашего кода. Похоже, у вас может возникнуть проблема с отправкой больших объемов данных каждый раз, когда вы отправляете сообщение, но это предположение основано на коде, который вы предоставили. Если бы вы могли дать нам больше, что бы помогло. –
@ DanielLeonard Я отредактировал этот вопрос. Пожалуйста, проверьте. –
Итак, я сначала проверил бы и посмотрю, не замедлила ли вас это firebase. Просто закомментируйте '[[[_rootRef child: @" messages "] childByAutoId] setValue: mdata];' и отправьте пару сообщений. Если нет замедления подвески, то ваша проблема - это firebase, а не библиотека. сообщите мне, если эта доза не устранит задержку. –