2011-07-13 20 views
1

MPMoviePlayerViewControllerのnavigationcontroller.viewにボタンを追加しようとしています。私はこれまでに次のように書いています。何もエラーは出ませんが、ボタンは表示されません!誰でも私が間違っていることを教えてもらえますか?ありがとう。iPhone:MPMoviePlayerViewControllerのナビゲーションバーにボタンを追加

 MPMoviePlayerViewController *videoController = [[[MPMoviePlayerViewController alloc] initWithContentURL:[NSURL URLWithString:filePath]] autorelease]; 
     UIButton *favButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
     favButton.frame = CGRectMake(280, 25, 30, 30); 
     [favButton addTarget:self action:@selector(favouriteButtonClicked:) forControlEvents:UIControlEventTouchUpInside]; 
    [favButton setBackgroundImage:[UIImage imageNamed:@"unselected.png"] forState:UIControlStateNormal]; 
     [videoController.navigationController.view addSubview:favButton]; 
     [self presentMoviePlayerViewControllerAnimated:videoController]; 


- (void)favouriteButtonClicked:(id)sender 
{ 
    NSLog(@"Inside favourite button clicked"); 
} 

また、次のコードを使用して追加してみてください!

 UIBarButtonItem *button = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(favouriteButtonClicked:)]; 
     videoController.navigationController.navigationItem.rightBarButtonItem=button; 
     [button release]; 

答えて

2
UIBarButtonItem *button = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(favouriteButtonClicked:)]; 
videoController.navigationItem.rightBarButtonItem = button; 
[button release]; 
+0

注意を動作します試してみてください。したがって、このコードは、あなたのnavigationControllerを参照するすべてのビューコントローラのナビゲーションバーにボタンを追加します。メディアプレイヤーのトップバーにボタンを追加することをお勧めしません。(ここでは標準ボタンを完了し、サイズを変更します) - この場合、解決策の1つは_controlStyle_ property = 'MPMovieControlStyleNonecreate'をセットアップし、カスタムトップバーなどでオーバーレイビューを追加することですコントロール。 – beryllium

+0

>> ...メディアプレーヤーのトップバーにボタンを追加(標準ボタンの完了とサイズ変更)... << まさにこれをやりたい!あなたに私の小さな事例を教えてください。 – applefreak

+1

あなたのコードはうまくいかなかった!私はまだボタンが表示されません。また、そのボタンに背景画像を追加する必要があります。それは許可していないようです! – applefreak

0

あなたはpresentModalViewControllerを使用する場合は、追加ボタンを見ることはできません。表示するには、[self.navigationController pushViewController:moviePlayer animated:YES]する必要があります。

-2

はthis..itがnavigationControllerプロパティを他のビューコントローラを含むUINavigationControllerのインスタンスに参照されていることを

[[[UIApplication sharedApplication] keyWindow] addSubview:favButton]; 
関連する問題