3

如何在仍然显示状态栏的同时在屏幕上实现圆角?

在应用程序委托中,我将这些设置应用于窗口:

[self.window.layer setCornerRadius:10.0];
[self.window.layer setMasksToBounds:YES];
self.window.layer.opaque = NO;

但在屏幕顶部,由于状态栏,我没有看到圆角。这是一个问题,因为我也需要应用程序中的状态栏。

谁能建议我如何解决这个问题?

4

4 回答 4

1

如果您想保留状态栏并仍然看到圆角边缘,则必须圆角视图的边缘而不是窗口。

在这种情况下,您的代码将几乎相同,而是应用于视图:

[self.view.layer setCornerRadius:10.0];
[self.view.layer setMasksToBounds:YES];
self.view.layer.opaque = NO;

这将进入视图控制器。

于 2012-05-16T13:16:17.437 回答
0

要删除状态栏吗?或者你想绕过状态栏的角落?如果你想绕过状态栏的角落,快速简单的答案是你不能。如果要删除状态栏,这很简单:

来自 Apple 类参考:

setStatusBarHidden:withAnimation:

隐藏或显示状态栏,可选择为过渡设置动画。- (void)setStatusBarHidden:(BOOL)hidden withAnimation:(UIStatusBarAnimation)animation Parameters

hidden YES 隐藏状态栏,NO 显示状态栏。

动画 一个常量,指示是否应该有动画,如果需要动画,是否应该淡入或淡出状态栏,或者是否应该将状态栏滑入或滑出。

于 2012-05-16T13:08:32.017 回答
0

在方法中添加以下行viewWillAppear。它将为视图提供圆润的外观。为此包括“QuartzCore”框架。

self.view.layer.cornerRadius = 10.0

希望这可以帮助你。

于 2012-05-16T13:17:22.393 回答
0

我知道这个问题很老,但只是把

func applicationDidBecomeActive(_ application: UIApplication) {
    window?.layer.cornerRadius = 10
    window?.clipsToBounds = true
    window?.backgroundColor = UIColor.black
}

在您的 AppDelegate.swift 中,您的应用程序中到处都有圆角:D

于 2017-11-02T17:25:41.317 回答