我将UISwitch作为子视图添加到UITableViewCell的contentView中,并将isOn设置为true。在切换了它之后,它变成了下面的样子,看起来很奇怪。
有没有人知道为什么会发生这种情况,以及如何解决这个问题?
作为比较,一个普通的UISwitch看起来如下所示:
发布于 2015-06-12 18:40:46
您非常希望您的开关成为自定义UITableViewCell类的一部分,并作为单元格实例化的一部分创建。然后,您可以通过脱队列单元的属性访问交换机。
layoutSubviews不是添加控件的地方。您可能甚至不需要覆盖它,因为自动布局约束可以处理开关的布局。
发布于 2015-06-12 18:14:38
这是因为每次调用"layoutSubviews“时我都会添加一个新的开关。当开关的值发生变化时,将在前一个开关的顶部添加一个新的开关。
解决方案是从超级视图中删除前面的开关,然后将新的开关添加到视图中。
发布于 2016-01-22 02:12:42
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];并定义单元格值等于零的时间。那么,开关就不会是那样的了。
https://stackoverflow.com/questions/30809460
复制相似问题