[英]How to change the background color of any view dynamically?
如何動態更改視圖的背景色? 是否設置計時器並分配視圖的背景顏色屬性以循環更改?
如何實現此功能?
在代碼中的某個位置(viewDidAppear是一個不錯的選擇)
NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:5 // seconds
target:self
selector:@selector(changeBackground:)
userInfo:nil
repeats:YES];
您班上的一個方法:
- (void)changeBackground:(NSTimer *)timer {
if (iWantToCancelTimer) {
[timer invalidate];
}
self.view.backgroundColor = [UIColor whateverColor];
}
這將是一個突然的更改,因此您可能需要制作動畫,但這是一個不同的問題。
聽起來就像您只希望視圖每x時間更改背景顏色。 為此,可以為該視圖設置一個計時器,並在每次觸發時更改背景色(您可以隨機生成一些RGB值)。
您可以使用+(NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval)seconds目標:(id)目標選擇器:(SEL)aSelector userInfo:(id)userInfo重復:(BOOL)重復將計時器設置為選擇器,您可以在其中設置計時器更改視圖背景...請記住,UIKit不是線程安全的,因此,如果您在另一個線程中運行計時器,則應在主線程上更改視圖背景。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.