内容の保証はできません。


/System/Library/frameWorks/UIKit.framework

クラス UISegmentedControl

NSObject
  |
  +--UIResponder
      |
      +--UIView
          |
          +--UIControl
              |
              +--UISegmentedControl

概要

UISegmentedControlオブジェクトは、複数のセグメントでコントローラを生成し各コントローラは別々のボタンとして機能します。このコントローラはコンパクトなボタンのグループを構築する手段を提供します。

このコントロールはタイトル(NSStringオブジェクト)やイメージ(UIImageオブジェクト)を指定できます。UISegmentedControlオブジェクトは指定した幅に比例して、親ビューの中に収まるように自動的にサイズ変更されます。セグメントを追加または削除するときには、スライドやフェーディングのアニメーションを付加してアクションをリクエストすることができます。

以下のようにUIControlEventValueChangedの定数を使用して、コントローラにアクションとターゲットを登録することができます。

 
[segmentedControl addTarget:self
                     action:@selector(action:)
           forControlEvents:UIControlEventValueChanged];
 

コントローラのセグメントをどのように構成するかによって表示や動作に影響を与えることがあります。

  • モーメントスタイルを設定した場合、ユーザがコントローラをタッチした際に選択された状態を示しません。開示されているボタンは、常にモーメントスタイルに設定されていますが実際の選択に影響を及ぼすものではありません。
  • コントローラが2つのセグメントだけしか持たない場合タップ時に意図しない方のセグメントを選択する原因となる可能性があります。

インデックス

インスタンスの作成

– initWithItems:

セグメントのコンテンツの管理

– setImage:forSegmentAtIndex:
– imageForSegmentAtIndex:
– setTitle:forSegmentAtIndex:
– titleForSegmentAtIndex:

セグメントの管理

– insertSegmentWithImage:atIndex:animated:
– insertSegmentWithTitle:atIndex:animated:
numberOfSegments property
– removeAllSegments
– removeSegmentAtIndex:animated:
selectedSegmentIndex property

セグメントの動作や外観の管理

momentary property
segmentedControlStyle property
tintColor property
– setEnabled:forSegmentAtIndex:
– isEnabledForSegmentAtIndex:
– setContentOffset:forSegmentAtIndex:
– contentOffsetForSegmentAtIndex:
– setWidth:forSegmentAtIndex:
– widthForSegmentAtIndex:

プロパティ

momentary

セグメントが選択された状態を見せるかどうか決定する。

@property(nonatomic, getter=isMomentary) BOOL momentary

numberOfSegments

レシーバの持つセグメントの数を返す。(読み取りのみ)

@property(nonatomic, readonly) NSUInteger numberOfSegments

segmentedControlStyle

コントローラのスタイルを指定する。

@property(nonatomic) UISegmentedControlStyle segmentedControlStyle

selectedSegmentIndex

選択されている(最後に選択された)セグメントのインデックスを返す。

@property(nonatomic) NSInteger selectedSegmentIndex

tintColor

セグメントの色合いを指定する。

@property(nonatomic, retain) UIColor *tintColor

インスタンスメソッド

contentOffsetForSegmentAtIndex:

指定したセグメントのコンテンツ(イメージまたはテキスト)を描画するためのオフセットを返す。

- (CGSize)contentOffsetForSegmentAtIndex:(NSUInteger)segment

imageForSegmentAtIndex:

指定したセグメントのイメージを返す。

- (UIImage *)imageForSegmentAtIndex:(NSUInteger)segment

initWithItems:

指定したタイトルまたはイメージをのセグメントを持つコントローラのインスタンスを作成する。

- (id)initWithItems:(NSArray *)items

insertSegmentWithImage:atIndex:animated:

レシーバの指定したセグメントにイメージを挿入する。

- (void)insertSegmentWithImage:(UIImage *)image atIndex:(NSUInteger)segment animated:(BOOL)animated

insertSegmentWithTitle:atIndex:animated:

レシーバの指定したセグメントにタイトルを挿入する。

- (void)insertSegmentWithTitle:(NSString *)title atIndex:(NSUInteger)segment animated:(BOOL)animated

isEnabledForSegmentAtIndex:

セグメントが有効であるかどうかを返す。

- (BOOL)isEnabledForSegmentAtIndex:(NSUInteger)segment

removeAllSegments

レシーバの全てのセグメントを削除する。

- (void)removeAllSegments

removeSegmentAtIndex:animated:

レシーバの指定したセグメントを削除する。オプションでアニメーションを指定できる。

- (void)removeSegmentAtIndex:(NSUInteger)segment animated:(BOOL)animated

setContentOffset:forSegmentAtIndex:

指定したセグメントのコンテンツ(イメージまたはテキスト)を描画するためのオフセットを調整する。

- (void)setContentOffset:(CGSize)offset forSegmentAtIndex:(NSUInteger)segment

setEnabled:forSegmentAtIndex:

指定したセグメントを有効、または無効にする。

- (void)setEnabled:(BOOL)enabled forSegmentAtIndex:(NSUInteger)segment

setImage:forSegmentAtIndex:

指定したセグメントのイメージを設定する。

- (void)setImage:(UIImage *)image forSegmentAtIndex:(NSUInteger)segment

setTitle:forSegmentAtIndex:

指定したセグメントのタイトルを設定する。

- (void)setTitle:(NSString *)title forSegmentAtIndex:(NSUInteger)segment

setWidth:forSegmentAtIndex:

指定したセグメントの幅を設定する。

- (void)setWidth:(CGFloat)width forSegmentAtIndex:(NSUInteger)segment

titleForSegmentAtIndex:

指定したセグメントのタイトルを返す。

- (NSString *)titleForSegmentAtIndex:(NSUInteger)segment

widthForSegmentAtIndex:

指定したセグメントの幅を返す。

- (CGFloat)widthForSegmentAtIndex:(NSUInteger)segment

コンスタント

Segmented Control Style

コントロールのスタイルを決定する。

スタイル概要
UISegmentedControlStylePlainシンプルなスタイル デフォルト
UISegmentedControlStyleBordered縁のあるスタイル
UISegmentedControlStyleBarツールバーのスタイル tintColorプロパティで色合いを指定できる

Segment Selection

UISegmentedControlNoSegment
セグメントが選択されていないことを示す。


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2012-08-29 (水) 20:35:38 (1847d)