2011-09-30 54 views
5

如何水平自动拉伸UISegmented控件以填充完整的UITableViewCell?在方向改变之后,它也会自动调整大小。如何水平自动拉伸UISegmented控件以填充完整的UITableViewCell?

我试过以下但是这仍然不起作用。分段控件出现在左侧的单元格中,但不会横向延伸。

NSArray *itemArray = [NSArray arrayWithObjects: @"Feet", @"Metric", nil]; 
    UISegmentedControl *segmentedControl = [[UISegmentedControl alloc] initWithItems:itemArray]; 
    segmentedControl.selectedSegmentIndex = [self.config.isMetric boolValue] ? 1 : 0; 
    segmentedControl.contentMode = UIViewContentModeScaleToFill; 
    [cell.contentView addSubview:segmentedControl]; 
    cell.contentView.contentMode = UIViewContentModeScaleToFill; 
    [segmentedControl release]; 

回答

3

你需要设置UISegmentedControl的框架,在你的情况下它将与单元格的框架相同。

segmentedControl.frame = cell.frame; 
segmentedControl.autoresizingMask = UIViewAutoresizingFlexibleWidth; 
+0

嗨伯恩 - 所以没办法自动伸展呢?所以在这种情况下,我不得不在调整方向后手动调整大小? – Greg

+0

编辑答案。现在应该适用于方向开关。 – Bourne

+0

您也可以在您设置UIViewContentMode值的位置移除当前代码中的这两行。 – Bourne