[問題] 如何判斷 method 有沒有被 override
想要請教大家一個問題
我有一個 class 繼承了 UIProgressView
然後我 override 了 drawRect
- (void)drawRect:(CGRect)rect
{
[super drawRect:rect];
// draw text
}
但是這樣只會畫出字,原本的 ProgressView 不會出現。
(只 call [super drawRect] 其他什麼都不作,也不會畫出原本的 bar)
是可以直接 add UILabel subView 來達到此效果。
只是剛剛突然想說來試試看這樣,沒想到不行。
後來我試 UILabel,我 call super drawRect 會畫出文字,不 call 就沒畫
表示應該是 UIProgressView 自己判斷有 override 所以 super 也不作事
(不知道為什麼要這樣設計)
加上,我看到這個訊息
-[UIProgressView setProgress:animated:] will not animate when -drawRect: has been overridden.
所以,我想要請問的是....
Object-C 要如何知道某個 method 有沒有被 override 阿?
以上,謝謝大家!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.117.29.236
→
12/21 14:05, , 1F
12/21 14:05, 1F
→
12/21 14:05, , 2F
12/21 14:05, 2F
MacDev 近期熱門文章
PTT數位生活區 即時熱門文章