gpt4 book ai didi

ios - 原型(prototype)单元的自定义 UI 元素无法访问 xcode 6 beta

转载 作者:行者123 更新时间:2023-11-29 02:43:56 25 4
gpt4 key购买 nike

我正在使用带有原型(prototype)单元格的 UITableView。我正在向这些原型(prototype)单元格 添加自定义元素(UILabelUIProgressView)。然后我想使用它们在 cellForRowAtIndexPath 中的标签来初始化这些元素。

看起来像样板设计...但它不起作用。我无法使用 viewWithTag 访问 UILabelUIProgressView 组件,看起来 contentView 中没有任何内容strong> 在细胞原型(prototype)中。

有趣的是,它在 XCode 5 中有效,但在 XCode 6 beta 3 到 5 中无效。此外,当我使用 XCode 6 打开我的项目时,最初使用 XCode 5 设置的设计全都搞砸了。我可以手动修复它,但是有些对象不再可见,就好像它们位于屏幕之外一样。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"CellFileDown"];

NSLog(@"cell.contentView subViews: %@", [cell.contentView subviews]);

UILabel *nameLabel = ((UILabel *)[cell.contentView viewWithTag:10]);
nameLabel.text = @"hello test";

NSLog(@"nameLabel: %@", nameLabel);

return cell;
}

控制台日志输出:

cell.contentView subViews: ()
nameLabel: (null)

...(5 times)

图片在这里: My screen when I launch IOs Simulator

您可以在这里看到原型(prototype)单元的 UILabel 没有改变(我已经检查了标签)和 UIProgressView 位于屏幕之外

这是 XCode 6 的已知错误,还是只有我无法使用新的 IB?

我可以使用 contentView addSubview 手动添加所有功能,但显然我想使用 StoryBoard。

编辑:该问题的解决方案( @codeIgnitor )

替换:

cell = [tableView dequeueReusableCellWithIdentifier:@"CellFileDown"];

与:

cell = [tableView dequeueReusableCellWithIdentifier:@"CellFileDown" forIndexPath:indexPath];

最佳答案

观察 xcode 6 的新 Storyboard功能 W:any H:any 所以如果你试图在 xcode 5 中打开它,你的 xcode 5 不知道引入的新功能所以有时你的整个 View 都会弄乱。我经历过这个!所以总是支持这样的实验但是

以下代码在 Xcode beta 4 中运行良好

  - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell" forIndexPath:indexPath];
UILabel *headLinesLabel = (UILabel *)[cell viewWithTag:101];
headLinesLabel.text = newsData.headlineTitle;
}

关于ios - 原型(prototype)单元的自定义 UI 元素无法访问 xcode 6 beta,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25380928/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com