如何以编程方式将约束添加到tableView单元格的默认textLabel和accessoryView

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何以编程方式将约束添加到tableView单元格的默认textLabel和accessoryView相关的知识,希望对你有一定的参考价值。

我有一个单元格,因为我想要使用以下方式的默认行为 -

returnCell.textLabel.text = @"Some long text Some long text";
returnCell.textLabel.lineBreakMode = NSLineBreakByWordWrapping;
returnCell.textLabel.numberOfLines = 0;

UISwitch *toggleSwitch = [[UISwitch alloc] initWithFrame:CGRectZero];
returnCell.accessoryView = toggleSwitch;

[returnCell.contentView setTranslatesAutoresizingMaskIntoConstraints:NO];
[returnCell.textLabel setTranslatesAutoresizingMaskIntoConstraints:NO];

[returnCell addVisualConstraints:@"H:|[contentView]|"
                            forViews:@{@"contentView":returnCell.contentView}];
[returnCell addVisualConstraints:@"V:|[contentView]|"
                            forViews:@{@"contentView":returnCell.contentView}];

现在我遇到的问题是,文本如果小可以正常工作,但如果它很长,它会落后于开关....

现在我的问题是如何避免这种情况并添加约束来解决我的textLabel和accessoryView(UISwitch)之间的这个问题,这两个问题都是defalt,而不是作为subView添加到cellView的内容中?

提前致谢!!!请帮忙。

答案

枚举contentView约束,直到找到带有textLabel的尾随约束,并增加/减少它对第一个项目的常量,直到它离开开关一些量(accessoryView)

以上是关于如何以编程方式将约束添加到tableView单元格的默认textLabel和accessoryView的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 tableView.dequeueReusableCell 以编程方式将单元格样式添加到单元格?

如何以编程方式将不同单元格的不同图像添加到 tableView (Swift)

以编程方式向已以编程方式添加到表格单元格的标签添加约束

如何以编程方式将不同单元格的不同图像添加到 tableView (Swift 3)

Swift - StackView 和添加约束,以编程方式添加视图到堆栈 - 加载后调整单元格高度?

ios Swift tableView 以编程方式用于标签和图像的动态单元格约束