0

我正在使用表格视图设计一个一对一的聊天界面。此表视图已修改为在一些新消息到达时显示气泡。在这种情况下,新消息通过推送通知到达。我在通过推送通知接收消息的函数中调用以下代码:

-(void)messageReceived: (NSString *)message{
    _message=[message retain];
    [tableView reloadData];
}

但是,这似乎不会重新加载我的表格视图。如果我reloadDataviewDidAppear函数中调用 for,它会重新加载。reloadData如果我将调用放在返回类型为IBAction的函数中(例如:绑定到按钮单击的函数),它也可以重新加载

reloadData没有通过自定义声明的函数触发的原因可能是什么?

4

2 回答 2

2

reloaddata 方法被调用,但这里的技巧是你没有将传入的消息添加到 tableview 加载的数据源!

于 2013-05-22T00:15:19.323 回答
1

可能是您没有将 Tableview 与 table view Delegates 和 Datasource 连接起来

Objective-C

@interface YourClass : UIViewController <UITextFieldDelegate, UITextViewDelegate>

yourtableview.delegate = self;
yourtableview.dataSource = self;

[tableView reloadData];

斯威夫特 3

class YourClass: UIViewController , UITableViewDelegate, UITableViewDataSource
yourtableview.delegate = self
yourtableview.dataSource = self

yourtableview.reloadData()

另一种方法是!对于 Swift 和 Objective-C 都适用。右键单击表格视图并拖放代表。

在此处输入图像描述

于 2017-03-28T12:10:28.890 回答