Свойство textColor
не указано как анимируемое в документах Apple для разработчиков, поэтому я не думаю, что вы можете сделать это с помощью простого блока UIView animations
.
Вместо этого можно использовать UIView transition
.
Код:
UIView.transition(with: self.titleLabel, duration: 1.0, options: .transitionCrossDissolve, animations: {
self.titleLabel.textColor = UIColor(red: 104/250, green: 155/250, blue: 121/250, alpha: 1)
}, completion: { _ in
self.titleLabel.textColor = UIColor(red:206/255, green: 206/255, blue: 206/255, alpha: 1.0)
})
Надеюсь, это поможет вам. Дайте мне знать, если у вас все еще есть проблемы.
Таким образом, вот что-то, что я придумал. Надежда это выручает кого-то.
$e = "$([char]27)"
enum ANSIFGColors {
Black = 30
Red = 91
Green = 92
Yellow = 93
Blue = 94
Magenta = 95
Cyan = 96
White = 97
}
enum ANSIBGColors {
Black = 40
Red = 41
Green = 42
Yellow = 103
Blue = 44
Magenta = 105
Cyan = 46
White = 107
}
function Colorize-Text {
param (
[string]$StringToColor,
[ANSIFGColors]$TextColor,
[ANSIBGColors]$BackgroundColor
)
$retValue = $null
if ($BackgroundColor -ne $null ) { $retValue = [string]"$e[$($TextColor.value__);$($BackgroundColor.value__)m$StringToColor$e[0m" }
else { $retValue = [string]"$e[$($TextColor.value__)m$StringToColor$e[0m" }
return $retValue
}
Может использоваться таким образом;
$FirstVar = Colorize-Text -StringToColor "This is Green" -TextColor Green
$SecondVar = Colorize-Text -StringToColor "This is NOT Green" -TextColor Cyan -BackgroundColor Red
Write-host $FirstVar $SecondVar
Или безотносительно другой комбинации Вы выбираете.
Вы можете использовать собственную команду Write-Color или что-то, что ищет встроенные токены, меняющие цвет. Так работали escape-последовательности ANSI во времена BBS.
Но вы могли бы добиться того, чего хотите, сделав:
Write-Host "Red " -f red -nonewline; Write-Host "Blue " -f blue;
Вот небольшая простая функция, которая делает то, что вы просили.
function Write-Color([String[]]$Text, [ConsoleColor[]]$Color) {
for ($i = 0; $i -lt $Text.Length; $i++) {
Write-Host $Text[$i] -Foreground $Color[$i] -NoNewLine
}
Write-Host
}
Write-Color -Text Red,White,Blue -Color Red,White,Blue