So I have a .png
that's 428x176 px:
I want to use it as a tab bar background image for when an item is in the selected state. The problem is that the image is too big. So now, I'm exploring the different resolution suffixes: @1x, @2x, @3x. But regardless of which I append to the image filename, the image remains too big for the tab bar item's background, although it does get smaller as I increase the resolution factor. How do I determine what the correct dimensions for this image should be?
Keep in mind that this is a background image for when any particular UITabBarItem
is in the selected state. It is meant to be the entire width and height of the UITabBarItem
. My tab bar will have three items laid across the width of the screen.
Update:
A lot of answers are providing swift based solutions, but what I'm asking for is what dimensions my image should be in pixels, in other words, what sized images should I be including in my bundle, so that the image will fit in the tab bar at all screen sizes. I imagine that since a UITabBar
by default expects a UIImage
for its selectionIndicatorImage
field and not a UIImageView
that there must be a solution that doesn't involve hacking around the UITabBar
and adding a UIImageView
as a subview of it and managing what position the image view should be in, manually, based on which UITabBarItem
is currently selected.