2011-09-30 3 views
5

完全にUITableViewCellを埋めるために、UISegmentedコントロールを水平方向に自動ストレッチする方法はありますか?オリエンテーションの変更後に自動的にリサイズする方法で。完全にUITableViewCellを埋めるために、UISegmentedコントロールを水平方向に自動ストレッチする方法は?

私は以下を試しましたが、これはまだ動作しません。分割されたコントロールは、左側のセルに表示されますが、水平方向には伸びません。

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値を設定する現在のコードの2行を削除することもできます。 – Bourne

関連する問題