我正在使用表格视图设计一对一的聊天界面。修改此表视图以在某些新消息到达时显示气泡。在这种情况下,新消息通过推送通知到达。我在我的函数中调用以下代码,该函数通过推送通知接收消息:
-(void)messageReceived: (NSString *)message{
_message=[message retain];
[tableView reloadData];
}
但是,似乎这不会重新加载我的表视图。
如果我在reloadData
函数中调用viewDidAppear
,则会重新加载。如果我将reloadData
调用放在返回类型为IBAction
的函数中(例如:绑定到按钮单击的函数),它也可以重新加载。
reloadData
不能通过自定义声明的函数触发的原因是什么?
答案 0 :(得分:2)
调用reloaddata方法,但这里的技巧是你没有将传入的消息添加到tableview加载的数据源中!
答案 1 :(得分:1)
可能您没有将Tableview连接到表视图Delegates和Datasource
目标-C
@interface YourClass : UIViewController <UITextFieldDelegate, UITextViewDelegate>
yourtableview.delegate = self;
yourtableview.dataSource = self;
[tableView reloadData];
Swift 3
class YourClass: UIViewController , UITableViewDelegate, UITableViewDataSource
yourtableview.delegate = self
yourtableview.dataSource = self
yourtableview.reloadData()
另一种方式是!适用于Swift和Objective-C。 右键单击表视图并拖放代理。