タブバーにカスタムの背景画像を設定しようとしています。サイズが640x92の「tabbarBack.png」という名前の画像があります。私のコードでは、このように設定しています。
[[[self tabBarController] tabBar] setBackgroundImage:[UIImage imageNamed:@"tabbarBack.png"]];
デバイスでテストすると、タブバーが本来の2倍の大きさになりますか?何か助けはありますか?
敬具
タブバーにカスタムの背景画像を設定しようとしています。サイズが640x92の「tabbarBack.png」という名前の画像があります。私のコードでは、このように設定しています。
[[[self tabBarController] tabBar] setBackgroundImage:[UIImage imageNamed:@"tabbarBack.png"]];
デバイスでテストすると、タブバーが本来の2倍の大きさになりますか?何か助けはありますか?
敬具
以下の2行を試してください
self.tabBarController.tabBar.autoresizesSubviews = NO;
self.tabBarController.tabBar.clipsToBounds = YES;
NSAddictのコメント:画像の名前をtabbarBack@2x.pngに変更します。これは、Retinaディスプレイのピクセルダブリングと呼ばれます。
@ 2xがないと、iOSはスケール係数を適用する必要があることを認識せず、そのまま使用されますが、半分にする必要があります。
したがって、ハックは次のとおりです。
[[[self tabBarController] tabBar] setBackgroundImage:[UIImage imageNamed:@"tabbarBack@2x.png"]];
実際にはあるはずです
だからあなたはただ言う
[[[self tabBarController] tabBar] setBackgroundImage:[UIImage imageNamed:@"tabbarBack.png"]];
次の行があるかどうかを確認します。
[[UITabBar appearance] setShadowImage:image];
削除するか、nil に設定する必要があります。