Ios 未调用cellForRowAtIndexPath,但为UITableView调用的numberofRowsInSection已作为子视图添加到UIView
我已经创建了自定义警报视图,我想在其中添加Ios 未调用cellForRowAtIndexPath,但为UITableView调用的numberofRowsInSection已作为子视图添加到UIView,ios,Ios,我已经创建了自定义警报视图,我想在其中添加UITableView作为子视图。我没有通过(IB)创建UITableView,而是通过编程创建的,我还在UIView中实现了协议UITableViewDelegate和UITableViewDataSource。但是没有调用方法cellforrowatinexpath。 我认为问题在于,我必须通过IB创建UITableView,使其可见。是否可以不通过IB创建,而是使用下面的代码并实现委托方法 这是密码 privacy_tablevie
UITableView
作为子视图。我没有通过(IB)
创建UITableView
,而是通过编程创建的,我还在UIView
中实现了协议UITableViewDelegate
和UITableViewDataSource
。但是没有调用方法cellforrowatinexpath
。
我认为问题在于,我必须通过IB创建UITableView
,使其可见。是否可以不通过IB
创建,而是使用下面的代码并实现委托方法
这是密码
privacy_tableview = [[UITableView alloc] initWithFrame:CGRectMake(10.0, 0.0, alert_width-40.0, 0.0)]; [privacy_tableview sizeToFit];
privacy_tableview.frame = CGRectMake(10.0, 0.0, alert_width-40.0, privacy_tableview.frame.size.height);
//Add scrollview which contain uitableview
MsgScrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(10.0, alert_height, alert_width-20.0, (privacy_tableview.frame.size.height>max_msg_height)?max_msg_height:privacy_tableview.frame.size.height)];
[privacy_tableview setDataSource:self];
[privacy_tableview setDelegate:self];
[privacy_tableview reloadData];
表的高度为零。\u tableview.frame.size.height=0.0,根据iOS的表视图编程基础,表中仅创建和显示可见单元格
因此,将高度增加到至少一行的高度可以调用TableView的cellForRowAtIndexPath方法。您是否将privacy_TableView添加为子视图?您在何处将TableView添加到scrollview?就在上述代码的下方[privacy_TableView reloadData];MsgScrollView.contentSize=privacy_tableview.frame.size;[MsgScrollView addSubview:privacy_tableview];更新的代码隐私_tableview=[[UITableView alloc]initWithFrame:CGRectMake(10.0,0.0,警报宽度-40.0,80.0)];您是否已在“滚动视图”和“自定义警报视图”中添加了“表格视图”和“滚动视图”?此外,消息滚动视图的y原点从警报视图的高度开始。假设警报视图的高度为100。那么滚动视图的y原点将是100,在这种情况下,滚动视图将添加到警报视图的可见高度之外。我已经有了所有这些场景,但是没有调用CellForRowatineXpath。我认为问题在于uitableview不是通过IB创建的。但我必须以编程方式创建它