gpt4 book ai didi

c# - 如何扩展自定义解决方案 Xamarin 的按钮

转载 作者:行者123 更新时间:2023-11-30 23:08:41 25 4
gpt4 key购买 nike

您好,我如何扩展自定义解决方案的查看按钮?

我不会扩展这个:

....

 <Button BackgroundColor="#388fee" BorderColor="#388fee" BorderRadius="25" WidthRequest="50" HeightRequest="50"
Command="{Binding CheckinShareCommand}" Margin="0,16">
<Button.Image>
<FileImageSource File="googlemap_view_share_button.png" />
</Button.Image>
</Button>

....

这是我的自定义解决方案。

当你按下图片时它会放大它

公共(public)类 CustomImage : 图片 { public static readonly BindableProperty CommandProperty = BindableProperty.Create(p => p.Command, null); 公共(public) ICommand 命令 { 得到 { 返回 (ICommand)GetValue(CommandProperty); } 设置 { SetValue(CommandProperty, value); }

    public static readonly BindableProperty CommandParameterProperty = BindableProperty.Create<CustomImage, object>(p => p.CommandParameter, null);
public object CommandParameter
{
get { return (object)GetValue(CommandParameterProperty); }
set { SetValue(CommandParameterProperty, value); }
}

private ICommand TransitionCommand
{
get
{
return new Command(async () =>
{
this.AnchorX = 0.48;
this.AnchorY = 0.48;
await this.ScaleTo(2.8, 50, Easing.Linear);
await Task.Delay(100);
await this.ScaleTo(1, 50, Easing.Linear);
if (Command != null)
{
Command.Execute(CommandParameter);
}
});
}
}

public CustomImage()
{
Initialize();
}


public void Initialize()
{
GestureRecognizers.Add(new TapGestureRecognizer()
{
Command = TransitionCommand
});

....

最佳答案

如果你想在按下图片时放大图片试试下面的代码:

public class CustomButton : Button
{
public CustomButton() : base()
{
const int _animationTime = 10;
Clicked += async (sender, e) =>
{
try
{
var btn = (CustomButton)sender;
await btn.ScaleTo(1.2, _animationTime);
await btn.ScaleTo(1, _animationTime);
}
catch (Exception ex)
{
ex.Track();
}
};

}
}

Xaml

<userControls:CustomButton BackgroundColor="#388fee" BorderColor="#388fee" BorderRadius="25" WidthRequest="50" HeightRequest="50"
Command="{Binding CheckinShareCommand}" Margin="0,16">
<Button.Image>
<FileImageSource File="googlemap_view_share_button.png" />
</Button.Image>
</userControls:CustomButton>

不要忘记将这一行放在标题中

xmlns:userControls="clr-namespace:YourNameSpace.UserControls"

关于c# - 如何扩展自定义解决方案 Xamarin 的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46339478/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com