我想询问有关自动布局和通话状态栏的信息.这是一个简单的场景,演示了我的问题:
表视图应具有4个布局约束(前导,顶部,尾部,底部)到Superview,常量设置为0.
现在,当我在模拟器中运行此应用程序并按⌘+时,T我可以看到红色背景,而在通话状态栏动画.是否有可能摆脱这个故障?
我正在显示一个UIWindow UIStatusBar,默认UIStatusBarStyle设置为UIStatusBarStyleLightContent,但是当我UIWindow将UIStatusBarStyle开关显示为黑色样式时.
我想在iOS 7上更改状态栏的背景颜色,我正在使用此代码:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[UIApplication sharedApplication].statusBarHidden = NO;
self.window.clipsToBounds = YES;
[[UIApplication sharedApplication] setStatusBarStyle: UIStatusBarStyleLightContent];
self.window.frame = CGRectMake(0,20,self.window.frame.size.width,self.window.frame.size.height-20);
self.window.bounds = CGRectMake(0, 20, self.window.frame.size.width, self.window.frame.size.height);
...
...
}
Run Code Online (Sandbox Code Playgroud)
当我写这个时,它会显示黑色背景的状态栏; 我希望它有一个红色背景.

如何更改状态栏的颜色为红色背景而不是黑色?
我有一个应用程序,它针对不同的流程具有不同颜色的导航栏。某些导航栏具有浅色背景,并且需要黑色状态栏文本。其他人有一个较暗的导航栏,并需要白色的状态栏文本。
作为迁移到 iOS15 的一部分,我更新了一个正在开发的应用程序,以使用UINavigationBarAppearance导航栏样式的方法。除了状态栏颜色之外,我可以像以前一样设置所有内容的样式。
以前我一直使用barStyle导航栏上的属性来设置状态栏文本颜色。
navigationBar.barStyle = .black
Run Code Online (Sandbox Code Playgroud)
使用时这似乎不起作用 UINavigationBarAppearance。
旧的造型方法
override func viewDidLoad() {
super.viewDidLoad()
let navigationBar = navigationController?.navigationBar
// Style using old approach
navigationBar?.barTintColor = UIColor.purple
navigationBar?.titleTextAttributes = [.foregroundColor: UIColor.white]
// Use barStyle to set status bar text color to white
// This only work when using the old styling approach
navigationBar?.barStyle = .black
}
Run Code Online (Sandbox Code Playgroud)
新的造型方法
override func viewDidLoad() {
super.viewDidLoad()
let navigationBar = navigationController?.navigationBar
// Style nav bar using new …Run Code Online (Sandbox Code Playgroud) 这是一个相当独特的问题.我搜索了几个小时,但找不到答案.我希望UIViewControllers我的应用程序中的所有内容都UIStatusBar可见.但在某种程度上UIViewController,当您点击a时UIButton,以下方法会调用相机modalView控制器.我想在调用以下方法时隐藏状态栏:
-(BOOL)startCameraControllerFromViewController:(UIViewController*)controller
usingDelegate:(id )delegate
Run Code Online (Sandbox Code Playgroud)
我尝试使用UIViewController基于状态栏= YES 更改plist文件(我只想在UIStatusBar拉出模态视图时隐藏)
我也在上面的方法中尝试了以下内容:
[[UIApplication sharedApplication] setStatusBarHidden:YES
withAnimation:UIStatusBarAnimationNone];
if ([self respondsToSelector:@selector(setNeedsStatusBarAppearanceUpdate)]) {
[[UIApplication sharedApplication] setStatusBarHidden:YES
withAnimation:UIStatusBarAnimationNone];
Run Code Online (Sandbox Code Playgroud)
似乎没什么用.有人可以帮忙吗?
像Instagram - EXPLORE Tab一样,当我滚动内容时,状态栏也会移动.
总是称为FullScreenScroll,就像这里一样,当用户滚动tableView时,NavigationBar&TabBar会滚动显示或隐藏在同一时间.
我的问题是,不仅是NavigationBar和TabBar,我还想让StatusBar跟随手指移动.
最后,它真的是全屏.



我正在构建iOS8应用程序.在我的tableview控制器上,我使用self.navigationController.hidesBarsOnSwipe = YES,在向上滑动手势时隐藏navigationBar.它工作得很好,但我的statusBar变得透明,并显示下面的表格内容.
在故事板上,状态栏是顶栏设置为"推断"
我想:1.保持我的状态栏不透明2.保持与navigationBar相同的颜色3.表格内容滚动在statusBar下面
谢谢.
objective-c uinavigationbar uinavigationcontroller uistatusbar ios8
我试图将状态栏的颜色更改为蓝色或其他颜色.
这可能吗,还是Apple不允许这样做?
问题很简单:
UITabBarViewController UITabBarViewController变成任何标签UIStatusBar变色!
我错过了什么?
我想在iOS 13上的每个ViewController级别上更改状态栏样式。到目前为止,我没有任何运气。
我在info.plist中定义UIUserInterfaceStyle为Light(因为我不想支持暗模式),并设置UIViewControllerBasedStatusBarAppearance为true。preferredStatusBarStyle在我的ViewController上调用,但被完全忽略。在UIUserInterfaceStyle似乎永远覆盖VC偏好。如何在iOS 13上使用每个ViewController状态栏样式?还是不再支持?
uistatusbar ×10
ios ×8
objective-c ×4
swift ×3
xcode ×2
autolayout ×1
cocoa-touch ×1
instagram ×1
ios11 ×1
ios13 ×1
ios8 ×1
statusbar ×1
uikit ×1
uiwindow ×1