2021 年、Objective-C
私はすべてのアプローチを試みますが、誰も働いていません。最終的に、それは SF シンボルをタブバアイテム イメージとして使用していることが原因であることがわかりました。カスタムイメージに置き換えると、うまくいきました。
NSArray *tabItems = [self.tabBar items];
// set tabItem icon, remove blue image with render mode set.
UIImage *image1 = [[UIImage imageNamed:@"myIcon"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
// set title offset
[tabItems[0] setTitlePositionAdjustment:UIOffsetMake(0, 20)];
[tabItems[1] setTitlePositionAdjustment:UIOffsetMake(-20, 20)];
[tabItems[2] setTitlePositionAdjustment:UIOffsetMake(20, 20)];
[tabItems[3] setTitlePositionAdjustment:UIOffsetMake(0, 20)];
// set image offset
[tabItems[0] setImageInsets:UIEdgeInsetsMake(0, 0, -30, 0)];
...
uitabbaritem の画像解像度は、@2x の場合は 50x50px、@3x の場合は 75x75px です。