StoreKit的SKStoreProductViewController在导航栏和视图之间留出空间?

时间:2014-03-24 18:42:21

标签: ios iphone uiview uiviewcontroller storekit

我有UIViewController的这个子类,显示SKStoreProductViewController。此视图控制器最初是为iOS 5创建的,不使用自动布局。 我的问题是,当显示SKStoreProductViewController时,导航栏和实际内容之间有一个空格...如果滚动视图,分段控件(详细信息/评论/相关)会浮动在导航栏下方(看到下面的图像,我在图像上添加了一个遮罩,使问题更加明显)。

由于我们无法访问呈现的视图控制器,我猜它与呈现SKStoreProductViewController的控制器有关。当用户点击显示控制器的按钮时,我试图改变/移动视图的框架,我也做了类似self.navigationController.navigationBar.translucent = NO;的事情,但似乎没有任何帮助。

有没有人遇到过类似的问题?关于如何解决它的任何想法?

Showing space between navigation bar and view Showing the segmented control bar floating

1 个答案:

答案 0 :(得分:0)

似乎iOS 7上的UIAppearance协议存在错误。我发现人们在使用UIAppearance时遇到(其他)问题。 我使用的是:

[[UINavigationBar appearance] setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];

适用于iOS 5,但对于iOS 6+,我直接在导航栏上设置了背景图像:

[self.navigationController.navigationBar setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];

这看起来很小,但它解决了我的问题。