2011-08-17 12 views
0

私はユーティリティアプリケーションを作成しています。フリップサイドでは、私はUISegmentedControlを持っています。ユーザーの選択に応じて、メインビューのラベルには2つのうちの1つが表示されます。この機能は動作しますが、何らかの理由でユーザーがアプリの設定(フリップサイド)に行くたびに、セグメント化されたコントロールはコントロールの同じ部分をハイライト表示します。ユーザがパート0を押すと、アプリケーションに戻り、設定パネルに戻り、セグメント化されたコントロールは選択されたパート0を表示します。ユーザがパート1を押した後、アプリケーションに戻り、設定パネルに戻り、セグメント化されたコントロールは再び選択されたパート0を表示します。これを無効にするには、いずれかを選択しないようにしますが、問題はまだ残ります。ユーザーが選択を行うと、メインビューに戻り、設定ペインに戻ります。何も選択されません。どのようにしてユーザーの選択を保持することができるので、設定ペインに戻ったときに最新の選択がハイライト表示されます。UISegmentedControlの選択肢を保持

+0

グローバル変数を使用することを検討してください:http://cocoawithlove.com/2008/11/ singletons-appdelegates-and-top-level.htmlまたはhttp://stackoverflow.com/questions/231947/referencing-appdelegate-instance-variables – tipycalFlow

答えて

0

NSUserDefaultsは答えになってしまっ:

[[NSUserDefaults standardUserDefaults] setInteger:segmentedControl.selectedSegmentIndex 
    forKey:@"someKey"]; 
[[NSUserDefaults standardUserDefaults] synchronize]; 

その後、あなたはそれを取得する場合:

NSInteger selectedSegment = [[NSUserDefaults standardUserDefaults] 
    integerForKey:@"someKey"]; 
+0

セグメントのNSUserDefaultsを保存しようとしています。あなたは、セグメントを保存するために使用したコードを提供することができます:) –

+0

私は私の答えを更新しました。 –

+0

ありがとう、もう1つの質問私はsegmentcontrolを使ってifステートメントまたはswitchステートメントを作成できます:) –

関連する問題