第十三章:位图(十)

按钮图像
Button定义了FileImageSource类型的Image属性,您可以使用该属性提供显示在按钮文本左侧的小型补充图像。此功能不适用于仅限图像按钮;如果这就是你想要的,本章中的ImageTap程序是一个很好的起点。
您希望图像大小约为五分之一英寸。这意味着您希望它们在32个与设备无关的单元中呈现并显示在Button的背景上。对于iOS和UWP,这意味着白色或透明背景下的黑色图像。对于Android,Windows 8.1和Windows Phone 8.1,您需要在透明背景下显示白色图像。
ButtonImage项目中的所有位图都来自Android De?sign图标集的Action Bar目录以及03_rating_good和03_rating_bad子目录。这些是“竖起大拇指”和“竖起大拇指”的图像。
iOS图像来自holo_light目录(透明背景上的黑色图像),具有以下文件名转换:

  • 未重命名drawable-mdpi / ic_action_good.png
  • drawable-xhdpi / ic_action_good.png重命名为ic_action_good@2x.png

对于ic_action_bad.png也是如此。
Android图像来自holo_dark目录(透明背景上的白色图像),包括子目录中的所有四种尺寸drawable-mdpi(32像素正方形),drawable-hdpi(48像素),drawable-xhdpi(64像素)和drawable -xxhdpi(96像素广场)。
各种Windows运行时项目的图像均为drawable-mdpi目录中的32像素位图。
这是为两个Button元素设置Icon属性的XAML文件:

<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="ButtonImage.ButtonImagePage">
    <StackLayout VerticalOptions="Center"
                 Spacing="50">
 
        <StackLayout.Resources>
            <ResourceDictionary>
                <Style TargetType="Button">
                    <Setter Property="HorizontalOptions" Value="Center" />
                        </Setter.Value>
                    </Setter>
                </Style>
            </ResourceDictionary>
        </StackLayout.Resources>
 
        <Button Text="Oh Yeah">
            <Button.Image>
                <OnPlatform x:TypeArguments="FileImageSource"
                            iOS="ic_action_good.png"
                            Android="ic_action_good.png"
                            WinPhone="Images/ic_action_good.png" />
            </Button.Image>
        </Button>
 
        <Button Text="No Way">
            <Button.Image>
                <OnPlatform x:TypeArguments="FileImageSource"
                            iOS="ic_action_bad.png"
                            Android="ic_action_bad.png"
                            WinPhone="Images/ic_action_bad.png" />
            </Button.Image>
        </Button>
    </StackLayout>
</ContentPage>

他们在这里:
201808262132250395
它并不多,但位图为通常纯文本的按钮增加了一点点。
小位图的另一个重要用途是可用于TableView中项目的上下文菜单。 但前提条件是深入探索有助于Xamarin.Forms交互式界面的各种视图。 这将在第15章出现。
但首先让我们看看StackLayout的替代方案,它允许您以完全灵活的方式定位子视图。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值