2 つの ViewController を管理する UITabBarController があります。1 つ目は、ユーザーがゲーム設定を変更できるようにする UIViewController です。2 つ目は、ゲーム シミュレーションを実行する GLKViewController です。
Game ViewController が Settings ViewController から設定を取得できるようにしようとしています。「速度」を表す設定ビューにスライダーがあります。
他のコントローラーへの参照がありますが、Slider を適切にサポートする変数を公開できません。
SecondViewController.h
@interface SecondViewController : UIViewController{
IBOutlet UISlider * mySlider;
}
property (nonatomic,retain) IBOutlet UISlider * mySlider;
@end
SecondViewController.m
- (IBAction) mySliderWasMoved:(id)sender;
@implementation SecondViewController
@synthesize mySlider;
- (IBAction) mySliderWasMoved:(id)sender{
};
ThirdViewController.m
NSArray *tmpVCs = self.parentViewController.tabBarController.viewControllers;
UIViewController *tmpVC = [tmpVCs objectAtIndex:1]; //obtain handle to SecondViewController
//NSNumber *mySpeed = tmpVC.mySlider; //doesn't see mySlider
NSNumber *mySpeed = [tmpVC mySlider]; //doesn't see mySlider
私はこれに不慣れで、プロジェクトには学ぶべき多くの側面があるため、現時点ではデータの管理方法を学ぼうとはしていません。インスタンス変数にアクセスする方法を知る必要があるだけです