gpt4 book ai didi

objective-c - UINavigationBar淡入淡出位置问题

转载 作者:行者123 更新时间:2023-11-28 17:41:03 26 4
gpt4 key购买 nike

所以,这是我不得不处理的一个有趣的小问题。我将 navigationBar 编码为半透明,将下方的 View 编码为全屏。当我加载 View 时,我可以点击 View 中的清除按钮来“激活”在栏和其他 ui 元素中淡入淡出的动画。

enter image description here

当我用可见的 UI 元素旋转设备时,它工作得很好。

但如果我再次点击以“关闭”带有淡出动画的元素,然后旋转,它会将导航栏向上推到状态栏中。

enter image description here

我不明白为什么会这样。我不想关闭状态栏,但如果必须的话,我会的。谁能帮我解决吧台的自转定位问题?

编辑解决

最佳答案

已解决,此代码为向下移动栏所需的 20 个像素设置动画。

- (void)showToolbar
{

if (toolbar.hidden == YES)
{
[self.navigationController.view layoutSubviews];
[UIView animateWithDuration:0.25 delay:0.0
options:UIViewAnimationOptionCurveLinear | UIViewAnimationOptionAllowUserInteraction
animations:^(void)
{
[[UIApplication sharedApplication]setStatusBarHidden:NO withAnimation:UIStatusBarAnimationFade];
toolbar.hidden = NO;
toolbar.alpha = 1.0f;
self.navigationController.navigationBar.alpha = 1.0f;
CGRect frame = self.navigationController.navigationBar.frame;
frame.origin.y = 20.0;
self.navigationController.navigationBar.frame = frame;
}
completion:NULL
];
}
if ([self.navigationController.navigationBar isHidden]) {
[self.navigationController setNavigationBarHidden:NO animated:NO];
}
}

关于objective-c - UINavigationBar淡入淡出位置问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8072971/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com