如何让一段文字淡出,只得到一些字母,在swift中创建一个新词?
How to make a text to fade out and only get some letters and create a new word in swift?
我正在尝试为我的 iOS 项目制作启动画面。我想显示我的服务全名,然后只获取每个单词的第一个字母,其他单词逐渐消失。
例如
服务参与支出 -> 最初
S I E -> 在其他文本消失后显示的字母。
请帮我制作类似上面的 gif 的东西?
您可以使用UIView.animate
UIView.animate(withDuration: 0.5, animations: {
label.alpha = 0
})
这就是淡出动画,你可以在动画块中做任何你想做的事情。
您可以向 UIView 添加扩展以访问简单的淡出
extension UIView {
func fadeOut(duration: TimeInterval) {
UIView.animate(withDuration: duration, animations: {
self.alpha = 0
}
}
}
然后使用它:
label.fadeOut()
正如我所说,您可以在动画块中做任何您想做的事情,因此您可以更改文本,并在完成后移动它们和那些东西。希望对您有所帮助!
你必须拆分文本,然后像那样获取每个子字符串的第一个字符
var YourString: String = "Service Involvement Expenditure"
let sunstringArray = YourString.componentsSeparatedByString(" ")
var firstString: String = sunstringArray [0] //Service
var secondString: String = sunstringArray [1] //Involvement
var thirdString: String = sunstringArray [2] //Expenditure
现在只获取第一个字符使用下面的代码
var firstletter = String(firstString.characters.first!) //S
var secondletter = String(secondString.characters.first!) //I
var thirdletter = String(thirdString.characters.first!) //E
var fullFirstChar = firstletter + secondletter + thirdletter //SIE
UIView.animate(withDuration: 2.0, delay: 0.0, options: UIViewAnimationOptions.curveEaseOut, animations: {
self.fullFirstChar .alpha = 1.0
},
completion: {
(finished: Bool) -> Void in
// Fade out
UIView.animate(withDuration: 2.0, delay: 0.0, options: UIViewAnimationOptions.curveEaseIn, animations: {
self.fullFirstChar .alpha = 0.0
},
completion: {(finished: Bool) -> Void in
AppInfo.instance.isAnimationCompleted = true
})
})
我希望这会有所帮助
我正在尝试为我的 iOS 项目制作启动画面。我想显示我的服务全名,然后只获取每个单词的第一个字母,其他单词逐渐消失。
例如
服务参与支出 -> 最初
S I E -> 在其他文本消失后显示的字母。
请帮我制作类似上面的 gif 的东西?
您可以使用UIView.animate
UIView.animate(withDuration: 0.5, animations: {
label.alpha = 0
})
这就是淡出动画,你可以在动画块中做任何你想做的事情。
您可以向 UIView 添加扩展以访问简单的淡出
extension UIView {
func fadeOut(duration: TimeInterval) {
UIView.animate(withDuration: duration, animations: {
self.alpha = 0
}
}
}
然后使用它:
label.fadeOut()
正如我所说,您可以在动画块中做任何您想做的事情,因此您可以更改文本,并在完成后移动它们和那些东西。希望对您有所帮助!
你必须拆分文本,然后像那样获取每个子字符串的第一个字符
var YourString: String = "Service Involvement Expenditure"
let sunstringArray = YourString.componentsSeparatedByString(" ")
var firstString: String = sunstringArray [0] //Service
var secondString: String = sunstringArray [1] //Involvement
var thirdString: String = sunstringArray [2] //Expenditure
现在只获取第一个字符使用下面的代码
var firstletter = String(firstString.characters.first!) //S
var secondletter = String(secondString.characters.first!) //I
var thirdletter = String(thirdString.characters.first!) //E
var fullFirstChar = firstletter + secondletter + thirdletter //SIE
UIView.animate(withDuration: 2.0, delay: 0.0, options: UIViewAnimationOptions.curveEaseOut, animations: {
self.fullFirstChar .alpha = 1.0
},
completion: {
(finished: Bool) -> Void in
// Fade out
UIView.animate(withDuration: 2.0, delay: 0.0, options: UIViewAnimationOptions.curveEaseIn, animations: {
self.fullFirstChar .alpha = 0.0
},
completion: {(finished: Bool) -> Void in
AppInfo.instance.isAnimationCompleted = true
})
})
我希望这会有所帮助