我正在开发一个使用UIButton的ios项目。我使用了[cardButton setTitle:card.contents forState:UIControlStateSelected|UIControlStateDisabled];
但我并不完全理解这个机制。我知道它是emun和bitmask进程。任何人都可以向我解释一下吗?感谢。
enum {
UIControlStateNormal = 0,
UIControlStateHighlighted = 1 << 0,
UIControlStateDisabled = 1 << 1,
UIControlStateSelected = 1 << 2,
UIControlStateApplication = 0x00FF0000,
UIControlStateReserved = 0xFF000000
};
答案 0 :(得分:0)
控件可以有more than one states at a time例如。选中和突出显示可以共存,等等。
因此,您可以为状态组合指定标题和图像。
EG。
UIButton * button;
//initialization code
NSString * title = @"Title";
[button setTitle:title forState:UIControlStateHighlighted | UIControlStateSelected];
title = [button titleForState:UIControlStateHighlighted | UIControlStateSelected];
使用位掩码为每个值的每个组合生成唯一值 - 使用按位OR尝试它们,您将得到它。与1美元,2美元,5美元,10美元等能够支付任何整数金额的货币票据不同,例如1美元和2美元的账单可以用来支付3美元,4美元等等,所以你只需要一定数量的账单。