0

ユーザーがボタンをクリックするたびにポップオーバーメニューを表示しようとしています。

2つの方法があります。最初の方法でボタンを作成します

- (void)viewDidLoad {

    [super viewDidLoad];

    UIBarButtonItem *btnMenu = [[UIBarButtonItem alloc]initWithTitle:@"Forms List" style:UIBarButtonItemStyleBordered target:self action:@selector(showPopover:)];
    self.navigationItem.leftBarButtonItem = btnMenu;

}

そして、2番目は最初の人によって呼び出され、ポップオーバーを表示します

-(IBAction)showPopover:(id)sender{

    NSLog(@"called with %@", sender);
    self.popoverController = popoverController;
    popoverController.delegate = self;
    [popoverController presentPopoverFromBarButtonItem:sender permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];

}

現在、ボタンをクリックしても何も起こりません。presentPopoverFromBarButtonItem問題は2番目の方法、主にライン にあると思います。

助けていただければ幸いです。そのメソッド呼び出しがどのように機能するかはよくわかりません。

ありがとう。

編集1:

これが私がpopoverControllerを初期化するコードです

@interface DetailViewController ()
@property (nonatomic, retain) UIPopoverController *popoverController;
- (void)configureView;
@end

@implementation DetailViewController

@synthesize toolbar, popoverController, detailItem, detailDescriptionLabel;
4

1 に答える 1

1

を初期化しましたUIPopoverControllerか?

UIPopoverController *popoverController = [[UIPopoverController alloc] initWithContentViewController:VCTHATGOESINSIDE];

他のすべてが失敗した場合は、rect から表示して、 を指定してみてくださいCGRect。お役に立てれば!

編集: initWith*コンテンツ*ViewController

于 2012-07-05T20:37:32.057 に答える