首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UITableViewCell AccessoryView没有正确显示

UITableViewCell AccessoryView没有正确显示
EN

Stack Overflow用户
提问于 2015-04-19 17:51:51
回答 5查看 1.5K关注 0票数 4

我在UITableviewCell中有一个带有UISwitch的accessoryView,它在运行时被正确地显示,但是一旦我旋转设备,开关就不在正确的位置了。

我可以使用约束,而不是使用accessoryView,但我认为我可以使用这个字段。有谁有主意吗?

谢谢!

编辑:以下是Interface中的配置:

编辑2:我使用了自定义单元格:

对默认属性进行初始化:

代码语言:javascript
复制
self.textLabel.font = [UIFont preferredDynamicFontForTextStyle:UIFontTextStyleBody fontSize:16.0];
self.backgroundColor = self.contentView.backgroundColor;

self.textLabel.text = item.title;
self.selectedImage = item.imageSelected;
self.unselectedImage = item.image;
self.imageView.image = self.unselectedImage;
// if I do it programmatically
self.accessoryView = [[UISwitch alloc] init];

我根本不设置约束,因为我使用默认属性..

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2016-03-01 09:13:22

看起来,如果您在代码中创建accessoryVieweditingAccessoryView并对其进行设置,那么一切都很好!

如果您试图在UIStoryBoard中设置它们,UITableViewCell将在它们第一次淡出之后删除constraints,并且不会将它们添加回。这是一个遗憾,但希望他们在以后的版本中改变它。

希望这能帮上忙!

票数 2
EN

Stack Overflow用户

发布于 2015-08-27 09:45:15

我只是和你有同样的问题。

以下是我的观察:

  • 如果您通过代码设置accessoryView,则无论是否选择单元格,在iOS 7和iOS 8上都是可以的。
  • 如果您按IB设置accessoryView,则在单元格的第一个选择之后,accessoryView移动到左上角的,并且仅在iOS 8上移动。

我不知道问题是来自IB还是iOS 8上单元格布局附件视图的方式,但到目前为止,解决方法很简单:始终通过代码设置accessoryView以避免意外行为。

票数 3
EN

Stack Overflow用户

发布于 2015-04-19 21:35:30

如果您正在使用autolayout (可能),您应该首先设置约束

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29733582

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档