2011-09-30 56 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