<Grid RowDefinitions="*,2*,*,*" ColumnDefinitions="*,*,*,*">
<Label Text="0" Grid.Row="0" Grid.Column="0" x:Name="djcstext"/>
<Image x:Name="imgRival" Grid.Row="0" Grid.ColumnSpan="2" Rotation="180"/>
<Label x:Name="lblResult" Text="赢" Grid.Row="1" Grid.ColumnSpan="3" FontSize="90" HorizontalOptions="Center" VerticalOptions="Center"/>
<Image x:Name="imgMy" Grid.ColumnSpan="3" Grid.Row="2"/>
<ImageButton x:Name="btnRock" Grid.Row="4" Grid.Column="0" WidthRequest="70" HeightRequest="70" BorderWidth="3" BorderColor="Silver" CornerRadius="10" Padding="8" Source="fist.jpg" Clicked="button_Clicked" ZIndex="0"/>
<ImageButton x:Name="btnForfex" Grid.Row="4" Grid.Column="1" WidthRequest="70" HeightRequest="70" BorderWidth="3" BorderColor="Silver" CornerRadius="10" Padding="8" Source="finger.jpg" Clicked="button_Clicked" ZIndex="1"/>
<ImageButton x:Name="btnCloth" Grid.Row="4" Grid.Column="2" WidthRequest="70" HeightRequest="70" BorderWidth="3" BorderColor="Silver" CornerRadius="10" Padding="8" Source="hand.jpg" Clicked="button_Clicked" ZIndex="2"/>
<Label x:Name="lblRivalScore" Text="0" Grid.Column="3" FontSize="72" HorizontalOptions="Center"/>
<Label x:Name="lblMyScore" Text="0" Grid.Row="3" Grid.Column="3" FontSize="72" HorizontalOptions="Center" VerticalOptions="End" Margin="0,0,0,10"/>
</Grid>
List<ImageSource> imglist = new List<ImageSource>()
{
ImageSource.FromFile("fist.jpg"),//剪刀
ImageSource.FromFile("finger.jpg"),//石头
ImageSource.FromFile("hand.jpg")//布
};
int rivalScore = 1;
int mySore = 1;
int djcs = 1;
private void button_Clicked(object sender, EventArgs e)
{
djcs++;
int myNum = ((ImageButton)sender).ZIndex;
imgMy.Source = imglist[myNum];
Random rm = new Random();
int rivalNum=rm.Next(0,3);
imgRival.Source = imglist[rivalNum];
switch (myNum)
{
case 0:
if (rivalNum == 0)//剪子石头布
{
lblResult.Text = "平";
}
else if (rivalNum == 1)
{
lblResult.Text = "输";
rivalScore ++;
}
else if(rivalNum == 2)
{
lblResult.Text = "赢";
mySore++;
}
break;
case 1:
if (rivalNum == 0)//剪子石头布
{
lblResult.Text = "赢";
mySore++;
}
else if (rivalNum == 1)
{
lblResult.Text = "平";
}
else if (rivalNum == 2)
{
lblResult.Text = "输";
rivalScore++;
}
break;
case 2:
if (rivalNum == 0)//剪子石头布
{
lblResult.Text = "输";
rivalScore++;
}
else if (rivalNum == 1)
{
lblResult.Text = "赢";
mySore++;
}
else if (rivalNum == 2)
{
lblResult.Text = "平";
}
break;
}
lblMyScore.Text= mySore.ToString();
lblRivalScore.Text= rivalScore.ToString();
djcstext.Text= djcs.ToString();
}