on Tue Oct 18 2016, Brandon Knope <email@example.com> wrote:
> I meant to bring this up a bit ago but just came across it again.
> I find this to not read properly:
> button.setTitle("Test", for: .normal) //for normal what?
> The for argument is really only clear in meaning when you are typing
> it out and see that it is a UIControlState type. While reading it
> without this context is it as clear? .normal doesn't seem descriptive
> enough on its own.
> Contrast this with UISegmentedControl:
> segmented.dividerImage(forLeftSegmentState: .normal, rightSegmentState:
> .normal, barMetrics:
> Here the parameter labels are needed because there needs to be a
> distinction in the method between left and right. But here it is not
> forLeft: or forRight: it is the much more clear forLeftSegmentState:
> So my question is: why was this not setTitle(forControlState:) or
> forButtonState, etc...?
This is really not an evolution question at this point. I suggest
filing radars against UIKit for things whose names could be improved.
swift-evolution mailing list