From aaeb3edb089566c908420e16df63730705ff86b7 Mon Sep 17 00:00:00 2001 From: Vasko Date: Thu, 12 Mar 2020 19:20:14 +0200 Subject: [PATCH] fix: rendering mode setting --- nativescript-core/ui/tabs/tabs.ios.ts | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/nativescript-core/ui/tabs/tabs.ios.ts b/nativescript-core/ui/tabs/tabs.ios.ts index 461b154e0..cb51cae1d 100644 --- a/nativescript-core/ui/tabs/tabs.ios.ts +++ b/nativescript-core/ui/tabs/tabs.ios.ts @@ -785,7 +785,17 @@ export class Tabs extends TabsBase { } private getIconRenderingMode(): UIImageRenderingMode { - return UIImageRenderingMode.AlwaysTemplate; + switch (this.tabStrip && this.tabStrip.iosIconRenderingMode) { + case "alwaysOriginal": + return UIImageRenderingMode.AlwaysOriginal; + case "alwaysTemplate": + return UIImageRenderingMode.AlwaysTemplate; + case "automatic": + default: + const hasItemColor = this._selectedItemColor || this._unSelectedItemColor; + + return hasItemColor ? UIImageRenderingMode.AlwaysTemplate : UIImageRenderingMode.AlwaysOriginal; + } } private getIcon(tabStripItem: TabStripItem, color?: Color): UIImage { @@ -822,7 +832,7 @@ export class Tabs extends TabsBase { image = this.getFixedSizeIcon(image); } - let renderingMode: UIImageRenderingMode = UIImageRenderingMode.AlwaysTemplate; + let renderingMode: UIImageRenderingMode = UIImageRenderingMode.Automatic; if (!isFontIcon) { renderingMode = this.getIconRenderingMode(); }