संपादित करें: ऐसा लगता है कि के बाद यह सब समाधान काम करना चाहिए, मैं कैश के साथ कुछ मुद्दों
UIImage *selTab = [[UIImage imageNamed:@"tabHighlight"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
CGSize tabSize = CGSizeMake(CGRectGetWidth(self.view.frame)/5, 49);
UIGraphicsBeginImageContext(tabSize);
[selTab drawInRect:CGRectMake(0, 0, tabSize.width, tabSize.height)];
UIImage *reSizeImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
//
[self.tabBar setSelectionIndicatorImage:reSizeImage];
tabHiglight
82x49 की एक png है था, मैं के साथ परीक्षण किया है अन्य आकार लेकिन यह सबसे अच्छा लगता है। मैं टैबबार में मौजूद वस्तुओं की संख्या से फ्रेम के width
को विभाजित करता हूं - मेरे मामले 5 में, फिर मैं "दाएं" आकार का एक नया UIImage बनाता हूं और इसे selectionIndicatorImage
के रूप में सेट करता हूं।
2x और 3x उपकरणों मैं इस्तेमाल किया समर्थन करने के लिए: UIGraphicsBeginImageContextWithOptions (tabSize, नहीं, [UIScreen mainScreen] .scale); – AlexD