我在cellForRowAtIndexPath中创建了这样的开关。
UISwitch *switchView = [[UISwitch alloc] initWithFrame:CGRectZero];
CGRectZero相当于CGRectMake(0,0,0,0)。 但是,正常尺寸可以看到开关。 我没有指定实际尺寸。 请向我解释上面的代码是如何工作的。
答案 0 :(得分:6)
UISwitch不可自定义,这也适用于大小。
UISwitch会覆盖initWithFrame:
并强制执行适合该控件的大小。忽略给定矩形的大小组件。
答案 1 :(得分:0)
任何UIView对象都可以通过实现UIView的sizeThatFits:方法来覆盖帧大小。实际上UIView class reference说:
UISwitch对象返回一个固定大小的值,表示交换机视图的标准大小