should not use setter in initializer due to UIAppearance issues