black, not translucent, statusbar and iOS 7

how can I set up a black status bar with white font and not translucent ? I try since one hour, all possibilities, and nothing works with the current daily build.

Irrespective what I choose with display.setStatusBar, the statusbar is translucent with black font. Tried different daily builds and even a complete clean project.

From what I’ve scene, all of the status bars are working correctly with Corona SDK and the latest iOS 7 build.  I did a test not too long ago that ran through all of the options.  Can you post some screen shots?  Perhaps your build.settings as well?

build.settings

plist = { UIStatusBarHidden = false, UIPrerenderedIcon = true, -- set to false for "shine" overlay }

main.lua

display.setStatusBar( display.DarkStatusBar ) local rect = display.newRect( 0, 0, 1500, 1500) rect:setFillColor(200)

IMG_2161.PNG

I tried a bit more and found out that if the statusbar is set to

  • display.TranslucentStatusBar
    the font changes to white. Now it is possible to paint a black rect behind it. That works, but is not a fine solution anyway. In addition you have always to make sure that the rect is in Front. I use an enterFrame event to hold it always in front.

Hope this will be fixed soon.

I am the only one with this issue?

I believe every iOS developer has this issue.  Under iOS7 all status bars are transluscent (well more transparent).  Dark and Default give you black on transparent.  Translucent gives you white on transparent.  If you want a different background behind it, it’s your responsibility to put it there (though Apple’s design wants your app’s background behind it)

Ok, I feared that already. Probably in most cases thats no problem, but in my case it is a bit tricky. Anyway, not really a big problem. Maybe the related corona syntax should be adapted to avoid disaccords.

Thanks for the advice Rob.

From what I’ve scene, all of the status bars are working correctly with Corona SDK and the latest iOS 7 build.  I did a test not too long ago that ran through all of the options.  Can you post some screen shots?  Perhaps your build.settings as well?

build.settings

plist = { UIStatusBarHidden = false, UIPrerenderedIcon = true, -- set to false for "shine" overlay }

main.lua

display.setStatusBar( display.DarkStatusBar ) local rect = display.newRect( 0, 0, 1500, 1500) rect:setFillColor(200)

IMG_2161.PNG

I tried a bit more and found out that if the statusbar is set to

  • display.TranslucentStatusBar
    the font changes to white. Now it is possible to paint a black rect behind it. That works, but is not a fine solution anyway. In addition you have always to make sure that the rect is in Front. I use an enterFrame event to hold it always in front.

Hope this will be fixed soon.

I am the only one with this issue?

I believe every iOS developer has this issue.  Under iOS7 all status bars are transluscent (well more transparent).  Dark and Default give you black on transparent.  Translucent gives you white on transparent.  If you want a different background behind it, it’s your responsibility to put it there (though Apple’s design wants your app’s background behind it)

Ok, I feared that already. Probably in most cases thats no problem, but in my case it is a bit tricky. Anyway, not really a big problem. Maybe the related corona syntax should be adapted to avoid disaccords.

Thanks for the advice Rob.

Could I suggest adding this bit of information as a Gotcha to the display.setStatusBar function in the docs?

I just spent an hour with the same problem until I googled for it and found this answer :slight_smile:

You can visit the documentation and hit the “Like it But” button and it will file a report with the team and we will get it fixed.

Rob

Could I suggest adding this bit of information as a Gotcha to the display.setStatusBar function in the docs?

I just spent an hour with the same problem until I googled for it and found this answer :slight_smile:

You can visit the documentation and hit the “Like it But” button and it will file a report with the team and we will get it fixed.

Rob