一周的学习即将结束,今天学习到了霓虹灯的做法,感觉很happy,分享一下制作方法
//应运程序代理类
//AppDelegate中的方法都是UIApplicationDelegate中的协议方法
//UIApplication应运程序类
class AppDelegate: UIResponder, UIApplicationDelegate {
//应用程序窗口,是AppDelegate类的属性
var window: UIWindow?
//应运程序加载完成的时候触发这个方法
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
//想再window对象添加内容,就在这个方法中实现
//UIScreen屏幕类
//UIScreen.main获取屏幕对象
//UIScreen.main.bounds获取屏幕大小
self.window = UIWindow(frame: UIScreen.main.bounds)
self.window?.backgroundColor = #colorLiteral(red: 1, green: 1, blue: 1, alpha: 1)
//让window成为应用程序的主窗口,并使其可见
self.window?.makeKeyAndVisible()
//给window设置根视图控制器
self.window?.rootViewController = UIViewController()
let redView = UIView(frame:CGRect(x: 107, y: 268, width: 200, height: 200))
redView.backgroundColor = #colorLiteral(red: 0.8537434687, green: 0.7977634797, blue: 0.9764705896, alpha: 1)
redView.tag = 200
self.window?.addSubview(redView)
redView.layer.cornerRadius = 100
let yellowView = UIView(frame:CGRect(x: 132, y: 293, width: 150, height: 150))
yellowView.backgroundColor = #colorLiteral(red: 0.8976129821, green: 0.6902934195, blue: 0.9686274529, alpha: 1)
yellowView.tag = 201
self.window?.addSubview(yellowView)
yellowView.layer.cornerRadius = 75
let blueView = UIView(frame:CGRect(x: 157, y: 318, width: 100, height: 100))
blueView.backgroundColor = #colorLiteral(red: 0.8227517346, green: 0.5248843816, blue: 0.9098039269, alpha: 1)
blueView.tag = 202
self.window?.addSubview(blueView)
blueView.layer.cornerRadius = 50
//参数1:定时执行的间隔
//参数2:目标对象
//参数3:目标对象选择执行的方法
//参数4:用户信息 nil
//参数5:定时器是否重复执行
Timer.scheduledTimer(timeInterval: 0.3, target: self, selector: #selector(changeColor), userInfo: nil, repeats: true)
return true
}
//MAPK:一定时器的目标对象执行方法
func changeColor() {
//print("定时器方法")
let redView = self.window?.viewWithTag(200)
//存储redView背景颜色
let color = redView?.backgroundColor
self.window?.viewWithTag(200)?.backgroundColor = self.window?.viewWithTag(201)?.backgroundColor
self.window?.viewWithTag(201)?.backgroundColor = self.window?.viewWithTag(202)?.backgroundColor
self.window?.viewWithTag(202)?.backgroundColor = color
}