2011-09-17 3 views
0

フォトブラウザを作成しています。サブビューからのボタンを押してpopViewControllerAnimatedを使ってビューをポップする方法は?

ユーザはUITableViewからセルを選択し、UINavigationControllerを使用してフォトブラウザビューにプッシュします。私の「PhotoBrowser.m」で

、私が持っている:

//Caption UIView 
    CGRect capFrame = CGRectMake(1024-400, 0, 400, 768); 
    overlayWindow = [[UICaptionOverlay alloc] initWithFrame:capFrame]; 
    overlayWindow.backgroundColor = [UIColor clearColor]; 
    [self addSubview:overlayWindow]; 

私は、サブビューを呼び出し、私のイメージ上のコンテンツをオーバーレイ。一連の写真にキャプションを付けること。私のサブビュー「UICaptionOverlay.m」で

、私がボタンを持っている:

UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(25, 300, 200, 50)]; 
button.backgroundColor = [UIColor blueColor]; 
[button setTitle:@"Return to Table View" forState:UIControlStateNormal]; 
[button addTarget:self action:@selector(buttonPressedClose) forControlEvents:UIControlEventTouchUpInside]; 
[self addSubview:button]; 
[button release]; 

これは、いくつかのラベルと私の写真の上のボタンでUIViewを表示します。

ボタンを押したときに、ユーザーをUITableViewに戻して別のセルを選択するにはどうすればよいですか?

私が呼び出すことができます。「PhotoBrowser.m」から

[photoBrowser performSelector:@selector(popViewControllerToTable) withObject:nil afterDelay:0.2]; 

を、私は、少なくともビューがポップすることができます知っています。

popViewControllerToTableには[self.navigationController popViewControllerAnimated:YES]があります。事前にすべての

おかげで...それをする

答えて

0

最も簡単な方法は、UICaptionOverlayインスタンスであなたの親のViewControllerへの参照を保持しています。

次にbuttonPressedCloseセレクタでこれを呼び出す:

[self.myParentViewController.navigationController popViewControllerAnimated:YES];

+0

感謝を!使用 '[self.superview.buttonPressClose];' UICaptionOverlayに は、PhotoBrowser.mで別の 'buttonPressClose'を呼び出すために '走る [self.navigationController popViewControllerAnimatedは:YES]; ' それが正常に動作します今。 もう一度タクシー! – AReality

関連する問題