0

私のシナリオは、 UIView Controller がプログラムで異なるサブビューを表示することです...ゲームボードのように。今、私は信じられないほどの状況にいます:

ゲーム終了後にアプリをリロードする方法が見つからない!? 私がやりたいのは、スターの新しいゲームの IBAction のシナリオ クリックを終了した後です。私の疑問は、ViewDidLoad または Main を呼び出すことです。

4

2 に答える 2

0

私はこのコードでそれを解決しました:

(IBAction)newGame:(id)sender{


    UIView *parent = self.view.superview;
    [self.view removeFromSuperview];
    self.view = nil; // unloads the view
    [parent addSubview:self.view];


}
于 2013-01-11T09:10:53.680 に答える
0

コードを viewDidLoad から -(void)startGame や -(void)refreshViews: などの新しい関数に移動してみて、ビューをリロードするときはいつでもその関数を呼び出してください。viewDidLoad でも、この関数を使用してビューをロードできます。

-(void)viewDidLoad
{
[super viewDidLoad];

[self startGame];


}

割り当てを作成し、この関数の外側にサブビューの一部を追加する場合、startGame を呼び出す前にスーパービューから削除しない限り、それらは表示されたままになります。

于 2012-12-20T06:44:19.253 に答える