How to give multi-device support in Xamarin Forms

2019-08-05 09:21发布

I am newbie to Xamarin development.

In android we have different values folder for multi-device support.

But In Xamarin forms how we give multi-device support for Android & iOS?

Anyone don't know about what is multi-device support pls check the sample document by Android
https://developer.android.com/guide/practices/screens_support.html

I want similar like this for Xamarin forms.

Note: I am asking about Xamarin forms not in native code.

Any suggestions or ideas are welcome. Thanks for your answers.

1条回答
家丑人穷心不美
2楼-- · 2019-08-05 09:41

How to give multi-device support in Xamarin Forms

Xamarin.Forms XAML Support :

Xamarin.Forms use the platform-specific mechanisms to calculate the absolute pixel dimensions. As Digitalsa1nt said, Xamarin.Forms uses xaml as it's base markup language for renderng displays, and converts this into the native counterparts at runtime. Usually, you don't have to care about the resolution, it will adjust the views based on your layout and constraints.


Some useful link about Xamarin.Forms multi-device support :


Update :

You could read this official document: Dealing with sizes and the related sample. It demonstrates many solutions to solve your problem :

For example : the Platform-specific font size at no cost

In some cases we need to assign a different font size to controls based on the specific operating system's styles, avoiding hard-coded values. Through the Device class, Xamarin.Forms makes this possible at no cost.

In your Page OnAppearing() method :

protected override void OnAppearing()
{
    base.OnAppearing();
    this.LargeLabel.FontSize = Device.GetNamedSize(NamedSize.Large, typeof(Label));
    this.SmallLabel.FontSize = Device.GetNamedSize(NamedSize.Small, typeof(Label));
    this.MediumLabel.FontSize = Device.GetNamedSize(NamedSize.Medium, typeof(Label));
}

Effect :

enter image description here

查看更多
登录 后发表回答