ポップオーバーを閉じ、ポップオーバーでボタンがクリックされたときに変数を返そうとしています。4つのボタンがあり、ボタンを選択すると、変数(ボタンに基づく)が元のView Controllerに戻され、ポップオーバーが閉じます。変数の受け渡しを試みる方法がわかりませんが、少なくともこのページ(http://stackoverflow.com/questions/3565968/dismiss-popover-using-uibutton)を使用してボタンクリックでポップオーバーを閉じようとしています。 )、これは何らかの理由で私には機能しません。ボタンをクリックしても何も起こりません。
AddWineViewControllerは、「ルート」ビューコントローラーです。
//AddWineViewController.h
//this is the "root" view controller
#import "WineStyleViewController.h"
@interface AddWineViewController : UIViewController <UIPopoverControllerDelegate, MyPopoverDelegate>
@property (nonatomic, retain) UIPopoverController *myPopoverController;
//AddWineViewController.m
@implementation AddWineViewController
@synthesize myPopoverController;
-(void)didClickCancelButton {
//I would like to have the variable passed here, something like self.wineStyle.text=wineStyle; where wineStyle is the variable from the popover.
[myPopoverController dismissPopoverAnimated:YES];
}
WineStyleViewControllerはポップオーバービューコントローラーです
//WineStyleViewController.h
@protocol MyPopoverDelegate <NSObject>
-(void)didClickCancelButton;
@end
@interface WineStyleViewController : UIViewController
@property (nonatomic, assign) id<MyPopoverDelegate> delegate;
@property (nonatomic, strong) NSString *wineStyle;
- (IBAction)redWineButton:(id)sender;
//WineStyleViewController.m
@implementation WineStyleViewController
@synthesize wineStyle;
@synthesize delegate;
- (IBAction)redWineButton:(id)sender {
wineStyle=@"Red";
[self.delegate didClickCancelButton];
}