Xamarin Switch 的默认大小太大,所以我想将其缩小。我尝试设置 HeightRequest = 20,但它在任何平台上都不起作用,例如 UWP、iOS。
有没有办法改变开关尺寸(高度)?
谢谢!
詹姆斯·H.
您可以使用 Xamarin.Forms 自定义渲染器来自定义 Xamarin.Forms 控件的外观和行为。
尝试以下步骤:
1.创建 Xamarin.Forms 自定义 CustomSwitch,子类化 Switch 控件
public class CustomSwitch : Switch
{
public CustomSwitch()
{
}
}
2.使用 Xamarin.Forms 中的自定义控件。
<StackLayout>
...
<local:CustomSwitch IsToggled="true"/>
</StackLayout>
3.在iOS上创建自定义渲染器。你可以用
public class CustomSwitchRenderer : SwitchRenderer
{
public CustomSwitchRenderer()
{
}
protected override void OnElementChanged(ElementChangedEventArgs<Switch> e)
{
base.OnElementChanged(e);
if (Control != null)
{
//Control.Transform = CGAffineTransform.MakeScale(0.5f, 0.5f);
Control.Transform = CGAffineTransform.MakeScale(2f, 2f);
}
}
}
希望它有效!