Xamarin XAML按钮中的中心图标和文本

时间:2015-07-10 17:48:20

标签: image xaml button xamarin

我不知道如何将图标置于按钮内并将其置于文本上方,我也没有找到有关它的信息,我被要求做一些&#34 ;塔布"选项菜单,但在屏幕下方,我发现它有点"硬"因为"设计含义"等,所以我决定使用按钮会更容易,但问题现在是如何使图像居中并使文本正确,如果有人可以帮助我,那将是大。到目前为止,这是我的代码:

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
         xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
         BackgroundColor="Silver"
         x:Class="XamForm.View.MainPage">
<Label Text="{Binding MainText}" VerticalOptions="Center"  HorizontalOptions="Center" />


 <StackLayout Padding="30">
<Label x:Name="lblCuantos" Text="No #" TextColor="Gray" FontSize="20"/>
<Label x:Name="lblNombre" Text="" FontSize="20"/>
<Button  x:Name="btn1" Text="Oprimir" Clicked="Accion"/>
<Button  x:Name="btn2"  BackgroundColor="White" Image="iconRes.png"  HorizontalOptions="CenterAndExpand" Text="Gridd" TextColor="Gray" Clicked="Accion2"/>
<Button  x:Name="btn3"  BackgroundColor="White" Image="iconRes.png"  HorizontalOptions="CenterAndExpand"  TextColor="Gray" Clicked="Accion2"/>


</StackLayout>
</ContentPage>

这是按钮本身的实际结果:

http://oi59.tinypic.com/11so9le.jpg

这就是菜单的最终结果看起来很像

http://oi62.tinypic.com/10pzw2f.jpg

谢谢!

3 个答案:

答案 0 :(得分:25)

您可以在按钮中使用ContentLayout="Top,0"。例如,在您的情况下使用下面的代码

<Button  x:Name="btn2" ContentLayout="Top,0" BackgroundColor="White" Image="iconRes.png"  HorizontalOptions="CenterAndExpand" Text="Gridd" TextColor="Gray" Clicked="Accion2" />
<Button  x:Name="btn3" ContentLayout="Top,0" BackgroundColor="White" Image="iconRes.png"  HorizontalOptions="CenterAndExpand"  TextColor="Gray" Clicked="Accion2"/>

答案 1 :(得分:2)

您可以使用方向设置为垂直的StackLayout,并在其中添加Button和Label。

答案 2 :(得分:0)

Button.Image属性的类型为FileImageSource,因此任何&#39; local&#39;可以在按钮中使用。这意味着以下代码将起作用:

someButton.Image = "imageName.png";

或者你可以写

someButton.Image = ImageSource.FromFile("imageName.png");

如果 imageName.png 位于每个应用程序项目中(iOS中的Resources文件夹,Android中的Resources / Drawable文件夹和WinPhone中的应用程序根目录;每个项目都有相应的构建操作集)。

Xaml等价物是:

<Button Text="Has Image" Image="someImage.png" />

有关每个平台的构建操作的详细信息,请参阅Working with Images doc