【问题标题】:Width of UITableViewCellUITableViewCell 的宽度
【发布时间】:2014-12-24 20:56:25
【问题描述】:

我的项目基于故事板和我放置 UITableView 和 UIViewTableViewCell(样式右细节)的视图之一。

在 Xcode 中一切看起来都不错,但是当我在模拟器或设备上启动应用程序时,表格单元格看起来太宽了。

您对这种奇怪行为的原因有什么建议吗?我应该改变什么才能让单元格完全可见?

编辑:

我正在附加 cellforRowAtIndexPath:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"MyTableCell";

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}

cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;

return cell;
}

【问题讨论】:

  • 它和 iPhone4 一样吗?
  • 你能把 cellForRowAtIndexPath 的代码贴出来吗?
  • @ZeMoon 我已经编辑了主要问题。
  • 标题在哪里设置?此外,似乎还有另一个带有“De...”文本的标签出现。您在哪里以及如何设置此标签?
  • 之前我放错了屏幕(现在更新了)。我使用默认样式“正确详细信息”,而不将自定义文本设置为标题或详细信息。如您所见,详细信息不在屏幕上,这是我的主要问题。

标签: xcode uitableview storyboard xcode6


【解决方案1】:

您是否为自定义单元格设置了与 UITableView 的宽度相同的宽度?

另外,您是否正确管理了“删除”标签大小(使用自动布局或自动调整大小)。 新的 iPhone 6,我们也必须注意 widtch,就像 iPhone 5 推出时不同的高度一样。

我可以从您发布的那两张屏幕截图中看到,您使用 iPhone6 大小的 ViewController 开发并在 iPhone5 上运行它。

我很确定您没有按应有的方式管理 Autolayout / Autoresizing。

尝试这样做,为您的“删除”标签:

【讨论】:

  • 感谢您的建议。最初在我的问题中,我放错了第一个屏幕(现已更新)。我正在使用 iPhone 4.7"。在情节提要中,我检查了“使用自动布局”和“使用大小类”。在我的示例中,我删除了单元格中的所有自定义文件,并仅在 Xcode 的“正确细节”样式中预定义而不设置任何自定义值。如您所见,“详细信息”不在屏幕范围内。
【解决方案2】:

我遇到了同样的问题,我的 tableView 右侧的内容被截断了。

原因是,我为自定义 tableViewCell 中的视图正确设置了 Autolayout 约束。但是,我没有为 tableView 本身设置AutoLayoutConstraints。因此 UITableView 没有被正确约束,在我的情况下太大了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多