JSQMessagesViewController Не показывает изображение пузыря в чате - PullRequest
0 голосов
/ 29 мая 2018

Not Showing Bubble Image with Messages

мой проект в target-c использует JSQMessagesViewController для Firebase-чата, но пузырьковые изображения не приходят с сообщениями.JSQMessagesViewController и Firbase интегрированы через Pods.

Пожалуйста, помогите мне.

Ответы [ 2 ]

0 голосов
/ 29 мая 2018

Создать метод, инициализировать цвет для отправителя и получателя, как показано ниже:

  - (JSQMessagesBubbleImage *) setupOutgoingBubble {
    JSQMessagesBubbleImageFactory *bubbleImageFactory = [[JSQMessagesBubbleImageFactory alloc] init];
    JSQMessagesBubbleImage * imgBubble = [bubbleImageFactory outgoingMessagesBubbleImageWithColor:[UIColor blueColor]];//jsq_messageBubbleBlueColor return imgBubble;
    return imgBubble;
}

- (JSQMessagesBubbleImage *) setupIncomingBubble {
    JSQMessagesBubbleImageFactory *bubbleImageFactory = [[JSQMessagesBubbleImageFactory alloc] init];
    JSQMessagesBubbleImage * imgBubble = [bubbleImageFactory outgoingMessagesBubbleImageWithColor:[UIColor greenColor]];//jsq_messageBubbleBlueColor return imgBubble;
    return imgBubble;
}




- (void)setupBubbleColors {
    self.incomingBubbleImageData = [self setupIncomingBubble];
    self.outgoingBubbleImageData = [self setupOutgoingBubble];
}

И вызвать метод выше в viewDidLoad, как показано ниже

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    [self setupBubbleColors];

}

И идентификатор JSQMessageBubbleImageDataSourceделегат возвращает соответствующее изображение, как показано ниже

- (id<JSQMessageBubbleImageDataSource>)collectionView:(JSQMessagesCollectionView *)collectionView
             messageBubbleImageDataForItemAtIndexPath:(NSIndexPath *)indexPath {
    Message *message = [_messages objectAtIndex:indexPath.row];
    NSLog(@"%@", message.type);
    if(message.isOwnMessageValue) {
        return self.outgoingBubbleImageData;
    }
    else return self.incomingBubbleImageData;
}

Выходные данные будут выглядеть примерно так:

enter image description here

0 голосов
/ 29 мая 2018

Загрузите демонстрационную версию приложения «Мой чат» с использованием firebase N JSQMessagesViewController

http://www.mediafire.com/file/a8rb2srsbdv643h/firebasechat.zip/file

...