在 Apple 最近发布的 Remote 应用程序中,我注意到导航栏的行为方式是独一无二的,我无法重现它。弹出 Now Playing 视图控制器时,Now Playing 视图控制器的导航栏保持透明,库视图控制器的导航栏也保持半透明(屏幕截图 1)。我试图弄清楚他们是使用两个导航控制器还是只使用一个。就我个人而言,我觉得他们只使用了一个,原因有两个:(1)启用了交互式弹出手势;(2) 当您按下库视图控制器中的“正在播放”按钮时,就在正在播放的屏幕完成“推送视图控制器”动画之前,导航栏变得透明(屏幕截图 2)。这是我在推送视图控制器(将导航栏设置为透明)时遇到的行为。所以我的问题是:Apple 如何将两个视图控制器的导航栏都呈现为单独的(如屏幕截图 1 所示),即使是栏按钮、导航标题等......在切换时也是 100% 的不透明度(通常在推动/弹出前一个视图控制器的按钮和标题会随着新控制器的被推动而消失)。我尝试过使用 bar tint color 切换时为 100% 的不透明度(通常在按下/弹出按钮时,前一个视图控制器的标题会随着新控制器的按下而淡出)。我尝试过使用 bar tint color 切换时为 100% 的不透明度(通常在按下/弹出按钮时,前一个视图控制器的标题会随着新控制器的按下而淡出)。我尝试过使用 bar tint colorviewDidAppear
并且viewWillAppear
在两个视图控制器中,但不能重现相同的行为,并且不能防止条形按钮褪色。
天哪,我希望我已经很好地解释了这一点,我只是想到它就感到困惑!
屏幕截图 1(弹出):
截图 2(推送):