initWithFrame: is not always the designated initializer, thus the object got improperly initialized. Use default initialization and simplify code.