HI. I need to write some text over a custom button. So I subclassed UIButton. In -drawrect, I write the text I need. The problem is that the text ends up under the button. After I write my text, UIButton's drawrect goes ahead and draws on top of me.
I am not even calling [super drawrect: rect] even though I was anticipating calling it before I did my drawing. It seems that UIButton's drawrect will get called regardless.
Any ideas? Thanks.
Best Answer
As other people have said, you don't need to subclass UIButton - infact it's best not to as UIButton is pretty complex (as you found). You have three options:
addTarget:action:forControlEvents:
). UIButton implements statefulness on top of this.If you don't need things like UIButton's
setTitle:forState:
and associated functionality but you are using a lot of these controls I would use the third option. Otherwise use the first (or second if you are on 3.0).