4

我在我的项目中使用 MPMoviePlayerViewController。我为 UIButtons 和 UINavigationbar 定义了以下外观,如下所示:

[[UIBarButtonItem   appearanceWhenContainedIn:[UINavigationBar class], nil]   
                    setBackgroundImage:[UIImage imageNamed:@"woodenBarButton"] 
                    forState:UIControlStateNormal 
                    barMetrics:UIBarMetricsDefault];

[[UINavigationBar appearance]   setBackgroundImage:[UIImage imageNamed:@"navigationbarBackground"] 
                                forBarMetrics:UIBarMetricsDefault];

所以现在 MPMoviePlayerViewController 也在使用导航栏。现在的问题是:按钮使用给定的外观,但工具栏没有 => 它看起来很糟糕。所以现在我有以下问题:

  1. 我可以说服 MPMoviePlayerViewController 中的 UINavigationBar 使用外观吗?
  2. 或者可以只为 MPMoviePlayerViewController 完全移除外观。

我试图通过 playerViewController.navigationitem.leftbarbuttonitem 访问按钮并覆盖属性,但这不起作用。

如果你能帮助我,那就太好了。谢谢。

4

1 回答 1

6

你也试过设置appearanceWhenContainedInMPMoviePlayerViewControllerappearanceappearanceWhenContainedIn同时工作。

[[UINavigationBar appearance]   setBackgroundImage:[UIImage imageNamed:@"navigationbarBackground"] 
                            forBarMetrics:UIBarMetricsDefault];
[[UINavigationBar appearanceWhenContainedIn:[MPMoviePlayerViewController class], nil] setBackgroundImage:nil forBarMetrics:UIBarMetricsDefault];
于 2011-11-14T13:44:10.600 回答