好的,这就是我如何使用枚举来解决这个问题。首先,声明你的枚举。你可以随便叫它,我可以称它为 RPS_STATE
enum RPS_STATE {
RPS_ROCK,
RPS_SCISSOR,
RPS_PAPER,
RPS_UNDEFINED
};
为初始化目的包含一个未定义的状态总是有用的。现在,枚举中定义的这些东西实际上只是 0-3 的整数。
因此,您可以在设置图像时使用以下内容。
-(void) setToRock:(UIImageView *) view {
view.image = rockImage;
view.tag = RPS_ROCK;
}
-(void) setToScissor:(UIImageView *) view {
view.image = scissorImage;
view.tag = RPS_SCISSOR;
}
-(void) setToPaper:(UIImageView *) view {
view.image = paperImage;
view.tag = RPS_PAPER;
}
然后您可以轻松设置和比较它们。
[self setToPaper:imageView1];
[self setToPaper:imageView2];
if(imageView1.tag == imageView2.tag){
}
等等。你也可以使用枚举作为一种类型。例如
enum RPS_STATE variableHoldingOnlyRPSState;
希望有帮助:)