我在创建UITableViewCell时遇到问题,因为UITableViewCell:initWithFrame:不再使用了reuseIdentifier。请留意我,我已经查看过有关此问题的其他问题,但无法找到它们。所以这是我的功能。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
MyCellObject *cell = (MyCellObject *)[tableView_ dequeueReusableCellWithIdentifier:@"cellid"];
if (cell == nil) {
cell = [[[ChatCell alloc] initWithFrame:CGRectZero reuseIdentifier:@"cellid"] autorelease];
}
return cell;
}
当我从其他问题中读到时,我试过了:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
MyCellObject *cell = (MyCellObject *)[tableView_ dequeueReusableCellWithIdentifier:@"cellid"];
if (cell == nil) {
cell = [[[MyCellObject alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"cellid"] autorelease];
}
return cell;
}
但我的手机不会显示其文字。我可以点击单元格行,它会变为选择,但没有可见文本。因为我的单元格文本是在我的MyCellObject
而不是cell.textLabel.text
中处理的,所以我需要使用框架(initWithFrame
)初始化单元格,但我还需要使用标识符({{ {1}})。
谢谢!
编辑:我不认为reuseIdentifier
因为在上述函数被弃用之前一切正常。这是MyCellObject
的一部分,它来自MyCellObject
:
UITableViewCell
我设置的原因是我可以"微管理"其中的文字多了一点。
答案 0 :(得分:0)
1)您尚未设置单元格标题。所以你不会在单元格上看到任何文字。在这里,您使用了UITableViewCell
类。因此,您需要在storyboard
中为单元格添加标签,并在您的案例中将UITableViewCell
设置为MyCellObject
类。然后,您就可以将文本设置为该标签。
2)你可以使用
MyCellObject * cell =(MyCellObject *)[tableView dequeueReusableCellWithIdentifier:@“cellid”];
试试这个..
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
MyCellObject * cell =(MyCellObject *)[tableView dequeueReusableCellWithIdentifier:@“cellid”];
cell.myCustomLabel.text = @“你的文字”;
返回单元格;
}