根据背景图片设置导航栏大小

时间:2019-07-09 15:56:22

标签: ios xcode uinavigationbar

我为导航栏设置了backgroundImage。这很好。但我想将导航栏的高度调整为背景图像。目前,背景图像的宽度还没有根据屏幕尺寸设置。

我尝试按照here所述设置导航栏的高度。这会显示较大的导航栏(大约一秒钟),但随后会再次缩小到其默认大小。

有人知道如何实现我想要的吗?这是我要实现的示例:image

2 个答案:

答案 0 :(得分:2)

  

Apple文档:

     

允许自定义导航栏的外观   使用UINavigationBar类的方法和属性,但是您   绝不能更改其框架,边界或Alpha值或修改其   直接查看层次结构。

要获得在您标记的图像中看到的效果,他们很可能使用集合视图来布局其数据,并且该图像是集合视图标题的一部分。他们使导航栏的背景颜色清晰可见,但是图像绝对不是导航栏本身的一部分。

Apple建议永远不要手动更改导航栏的框架,因为它会弄混其子视图和动画方法的布局代码。

您可以将导航栏子类化,并尝试创建类似的内容,或者走更简单的路线,使导航栏清晰( String chromePath = "somepath/selenium-2.48.2/chromedriver"; Map<String, Object> prefs = new HashMap<String, Object>(); prefs.put("profile.default_content_setting_values.notifications", 2); ChromeOptions chromeOptions = new ChromeOptions(); chromeOptions.setExperimentalOption("prefs", prefs); System.setProperty("webdriver.chrome.driver", chromePath); WebDriver driver = new ChromeDriver(chromeOptions); 而不是UIColor(white: 0, alpha: 1),否则可能会显示不正确)并具有基础视图显示图像(例如,集合视图的whos标头延伸到视图控制器的顶部)。

这将使您可以自由调整图像的高度和宽度,而无需将导航栏归类,也不会产生潜在的错误。

答案 1 :(得分:0)