Copyright (C) iPhoneアプリ開発備忘録 All rights reserved.
ブログ内で記したコード、内容の正確性は保証いたしません。
記載内容を実装したことにより発生した不具合・損害等の責任は一切負いません。



2014年02月11日

iOS7でUITableViewのセル上のUISegmentedControlが正しく動作しないときのチェックポイント



iOS7でUITableViewのセル上にUISegmentedControlを表示しているとき、スクロールとセグメントコントロールのタップを繰り返していると、タップした部分のセグメントコントロール及び、直前に選択されていたセグメントコントロールが両方とも選択された状態になったり、セグメントコントロールの中のテキストのtintColorが非選択状態の色になる現象が起きることがある。

この場合、cellにUISegmentedControlをaddSubviewするのではなく、cell.accessoryViewにUISegmentedControlを設定しているか確認する。

Before
UISegmentedControl *sc = [ [ UISegmentedControl alloc ] initWithFrame: CGRectMake(0, 0, 295, 40) ];

   ・・・

[cell addSubview: sc];


After
UISegmentedControl *sc = [ [ UISegmentedControl alloc ] initWithFrame: CGRectMake(0, 0, 295, 40) ];

   ・・・

cell.accessoryView = sc;


iOS6以前では動作していてiOS7以降で動作しなくなった場合は、上記箇所をチェックするといい。


タグ:Mac apple iPAD IOS iPhone
【UISegmentedControlの最新記事】
posted by mobileDeveloper at 22:16 | Comment(0) | TrackBack(0) | UISegmentedControl はてなブックマーク - iOS7でUITableViewのセル上のUISegmentedControlが正しく動作しないときのチェックポイント | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバック
Apple、Appleのロゴ、App Store、iPodのロゴ、iTunesは、米国および他国のApple Inc.の登録商標です。
iPhone、iPod touch、iPadはApple Inc.の商標です。
iPhone商標は、アイホン株式会社のライセンスに基づき使用されています。
その他、本ブログに記載されている製品名、会社名は、それぞれ各社の商標または登録商標です。