From 3f485594db062d38ae0c9071692e62a534ae65bf Mon Sep 17 00:00:00 2001 From: Jack Date: Mon, 28 Apr 2014 12:14:54 +0800 Subject: [PATCH] fix load DataSource to main queue. --- .../UserInterfaceState.xcuserstate | Bin 60882 -> 61083 bytes .../XHDemoWeChatMessageTableViewController.m | 52 +++++++++++------- 2 files changed, 32 insertions(+), 20 deletions(-) diff --git a/Example/MessageDisplayExample/MessageDisplayExample.xcodeproj/project.xcworkspace/xcuserdata/qtone-1.xcuserdatad/UserInterfaceState.xcuserstate b/Example/MessageDisplayExample/MessageDisplayExample.xcodeproj/project.xcworkspace/xcuserdata/qtone-1.xcuserdatad/UserInterfaceState.xcuserstate index d585c57169aaa9ed27c2da7b605c0d47a482bc83..576da74bfd3a5a74d4eaab5508c1908b607c3bd2 100644 GIT binary patch delta 29453 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 diff --git a/Example/MessageDisplayExample/MessageDisplayExample/XHDemoWeChatMessageTableViewController.m b/Example/MessageDisplayExample/MessageDisplayExample/XHDemoWeChatMessageTableViewController.m index 96ee744..f4725cd 100644 --- a/Example/MessageDisplayExample/MessageDisplayExample/XHDemoWeChatMessageTableViewController.m +++ b/Example/MessageDisplayExample/MessageDisplayExample/XHDemoWeChatMessageTableViewController.m @@ -14,6 +14,37 @@ @interface XHDemoWeChatMessageTableViewController () @implementation XHDemoWeChatMessageTableViewController +- (void)loadDemoDataSource { + WEAKSELF + dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ + NSMutableArray *messages = [[NSMutableArray alloc] initWithObjects: + [[XHMessage alloc] initWithText:@"这是华捷微信,为什么模仿这个页面效果呢?希望微信团队能看到我们在努力,请微信团队给个机会,让我好好的努力靠近大神,希望自己也能发亮,好像有点过分的希望了,如果大家喜欢这个开源库,请大家帮帮忙支持这个开源库吧!我是Jack,叫华仔也行,曾宪华就是我啦!Call Me 15915895880" sender:@"华仔" date:[NSDate distantPast]], + [[XHMessage alloc] initWithText:@"这是华捷微信,为什么模仿这个页面效果呢?希望微信团队能看到我们在努力,请微信团队给个机会,让我好好的努力靠近大神,希望自己也能发亮,好像有点过分的希望了,如果大家喜欢这个开源库,请大家帮帮忙支持这个开源库吧!我是Jack,叫华仔也行,曾宪华就是我啦!Call Me 15915895880" sender:@"曾宪华" date:[NSDate distantPast]], + [[XHMessage alloc] initWithText:@"这是华捷微信,为什么模仿这个页面效果呢?希望微信团队能看到我们在努力,请微信团队给个机会,让我好好的努力靠近大神,希望自己也能发亮,好像有点过分的希望了,如果大家喜欢这个开源库,请大家帮帮忙支持这个开源库吧!我是Jack,叫华仔也行,曾宪华就是我啦!Call Me 15915895880" sender:@"曾宪华" date:[NSDate distantPast]], + [[XHMessage alloc] initWithText:@"这是华捷微信,为什么模仿这个页面效果呢?希望微信团队能看到我们在努力,请微信团队给个机会,让我好好的努力靠近大神,希望自己也能发亮,好像有点过分的希望了,如果大家喜欢这个开源库,请大家帮帮忙支持这个开源库吧!我是Jack,叫华仔也行,曾宪华就是我啦!Call Me 15915895880" sender:@"曾宪华" date:[NSDate distantPast]], + [[XHMessage alloc] initWithText:@"这是华捷微信,为什么模仿这个页面效果呢?希望微信团队能看到我们在努力,请微信团队给个机会,让我好好的努力靠近大神,希望自己也能发亮,好像有点过分的希望了,如果大家喜欢这个开源库,请大家帮帮忙支持这个开源库吧!我是Jack,叫华仔也行,曾宪华就是我啦!Call Me 15915895880" sender:@"曾宪华" date:[NSDate date]], + [[XHMessage alloc] initWithText:@"这是华捷微信,为什么模仿这个页面效果呢?希望微信团队能看到我们在努力,请微信团队给个机会,让我好好的努力靠近大神,希望自己也能发亮,好像有点过分的希望了,如果大家喜欢这个开源库,请大家帮帮忙支持这个开源库吧!我是Jack,叫华仔也行,曾宪华就是我啦!Call Me 15915895880" sender:@"曾宪华" date:[NSDate date]], + nil]; + + for (NSUInteger i = 0; i < 1; i++) { + [messages addObjectsFromArray:messages]; + } + + for (NSInteger i = 0; i < 10; i ++) { + XHMessage *message = [[XHMessage alloc] initWithPhoto:[UIImage imageNamed:@"JieIcon"] thumbnailUrl:nil originPhotoUrl:nil sender:@"Jack" date:[NSDate date]]; + message.bubbleMessageType = (i % 2) ? XHBubbleMessageTypeSending : XHBubbleMessageTypeReceiving; + [messages addObject:message]; + + [messages addObject:[[XHMessage alloc] initWithText:@"这是华捷微信,为什么模仿这个页面效果呢?希望微信团队能看到我们在努力,请微信团队给个机会,让我好好的努力靠近大神,希望自己也能发亮,好像有点过分的希望了,如果大家喜欢这个开源库,请大家帮帮忙支持这个开源库吧!我是Jack,叫华仔也行,曾宪华就是我啦!Call Me 15915895880" sender:@"曾宪华" date:[NSDate date]]]; + } + dispatch_async(dispatch_get_main_queue(), ^{ + weakSelf.messages = messages; + [weakSelf.messageTableView reloadData]; + [weakSelf scrollToBottomAnimated:YES]; + }); + }); +} + - (void)viewDidLoad { [super viewDidLoad]; @@ -22,26 +53,7 @@ - (void)viewDidLoad [self setBackgroundColor:[UIColor clearColor]]; [self setBackgroundImage:[UIImage imageNamed:@"TableViewBackgroundImage"]]; - self.messages = [[NSMutableArray alloc] initWithObjects: - [[XHMessage alloc] initWithText:@"这是华捷微信,为什么模仿这个页面效果呢?希望微信团队能看到我们在努力,请微信团队给个机会,让我好好的努力靠近大神,希望自己也能发亮,好像有点过分的希望了,如果大家喜欢这个开源库,请大家帮帮忙支持这个开源库吧!我是Jack,叫华仔也行,曾宪华就是我啦!Call Me 15915895880" sender:@"华仔" date:[NSDate distantPast]], - [[XHMessage alloc] initWithText:@"这是华捷微信,为什么模仿这个页面效果呢?希望微信团队能看到我们在努力,请微信团队给个机会,让我好好的努力靠近大神,希望自己也能发亮,好像有点过分的希望了,如果大家喜欢这个开源库,请大家帮帮忙支持这个开源库吧!我是Jack,叫华仔也行,曾宪华就是我啦!Call Me 15915895880" sender:@"曾宪华" date:[NSDate distantPast]], - [[XHMessage alloc] initWithText:@"这是华捷微信,为什么模仿这个页面效果呢?希望微信团队能看到我们在努力,请微信团队给个机会,让我好好的努力靠近大神,希望自己也能发亮,好像有点过分的希望了,如果大家喜欢这个开源库,请大家帮帮忙支持这个开源库吧!我是Jack,叫华仔也行,曾宪华就是我啦!Call Me 15915895880" sender:@"曾宪华" date:[NSDate distantPast]], - [[XHMessage alloc] initWithText:@"这是华捷微信,为什么模仿这个页面效果呢?希望微信团队能看到我们在努力,请微信团队给个机会,让我好好的努力靠近大神,希望自己也能发亮,好像有点过分的希望了,如果大家喜欢这个开源库,请大家帮帮忙支持这个开源库吧!我是Jack,叫华仔也行,曾宪华就是我啦!Call Me 15915895880" sender:@"曾宪华" date:[NSDate distantPast]], - [[XHMessage alloc] initWithText:@"这是华捷微信,为什么模仿这个页面效果呢?希望微信团队能看到我们在努力,请微信团队给个机会,让我好好的努力靠近大神,希望自己也能发亮,好像有点过分的希望了,如果大家喜欢这个开源库,请大家帮帮忙支持这个开源库吧!我是Jack,叫华仔也行,曾宪华就是我啦!Call Me 15915895880" sender:@"曾宪华" date:[NSDate date]], - [[XHMessage alloc] initWithText:@"这是华捷微信,为什么模仿这个页面效果呢?希望微信团队能看到我们在努力,请微信团队给个机会,让我好好的努力靠近大神,希望自己也能发亮,好像有点过分的希望了,如果大家喜欢这个开源库,请大家帮帮忙支持这个开源库吧!我是Jack,叫华仔也行,曾宪华就是我啦!Call Me 15915895880" sender:@"曾宪华" date:[NSDate date]], - nil]; - - for (NSUInteger i = 0; i < 1; i++) { - [self.messages addObjectsFromArray:self.messages]; - } - - for (NSInteger i = 0; i < 10; i ++) { - XHMessage *message = [[XHMessage alloc] initWithPhoto:[UIImage imageNamed:@"JieIcon"] thumbnailUrl:nil originPhotoUrl:nil sender:@"Jack" date:[NSDate date]]; - message.bubbleMessageType = (i % 2) ? XHBubbleMessageTypeSending : XHBubbleMessageTypeReceiving; - [self.messages addObject:message]; - - [self.messages addObject:[[XHMessage alloc] initWithText:@"这是华捷微信,为什么模仿这个页面效果呢?希望微信团队能看到我们在努力,请微信团队给个机会,让我好好的努力靠近大神,希望自己也能发亮,好像有点过分的希望了,如果大家喜欢这个开源库,请大家帮帮忙支持这个开源库吧!我是Jack,叫华仔也行,曾宪华就是我啦!Call Me 15915895880" sender:@"曾宪华" date:[NSDate date]]]; - } + [self loadDemoDataSource]; } - (void)didReceiveMemoryWarning