【问题标题】:Why don't we have UIBarMetricsLandscapePad?为什么我们没有 UIBarMetricsLandscapePad?
【发布时间】:2013-01-27 16:53:44
【问题描述】:

如何在细节拆分视图中为导航栏设置不同的背景图像,以便它处于横向而不是纵向时?

这是我使用的代码

[self.topNavbar setBackgroundImage:[UIImage imageNamed:@"nav-bar-portrait-ipad"]
                                   forBarMetrics:UIBarMetricsDefault];
[self.topNavbar setBackgroundImage:[UIImage imageNamed:@"nav-bar-landscape-ipad"]
                                   forBarMetrics:UIBarMetricsLandscapePhone];

当 splitView 旋转为横向时,永远不会调用 UIBarMetricsLandscapePhone。纵向 (768 px) 模式下 detailView 的宽度与横向 (704 px) 模式下的宽度不同,那么我们如何为每个设置不同的图像呢?

【问题讨论】:

    标签: ios objective-c ipad


    【解决方案1】:

    导航栏在 iPad 上的不同方向不会改变高度,因此没有单独的栏指标(不需要不同高度的图像)。

    在 iPhone 上,横向导航栏比纵向导航栏短,因此需要不同的图像(渐变图像不能很好地缩放)。导航背景通常一直是相同的,因此宽度通常不是考虑因素。

    如果您想在旋转时更改图像,则必须响应旋转事件。

    【讨论】:

    • 我意识到高度不会改变,但宽度会改变。我不知道为什么苹果认为我们不需要新的条形指标?
    • 你的图片是什么样的?里面有什么需要改变的?您可以使用带有左右帽子插图的可调整大小的图像吗?
    • 它基本上是一种皮革效果活页夹,例如 cdn4.raywenderlich.com/wp-content/uploads/2012/05/… 不知道如何使这种类型的图像可调整大小......
    • 也许是平铺的,但您需要小心设计它的方式? (在 ios6 中,您可以为可调整大小的图像指定平铺模式而不是拉伸)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多