Xamarin表格 - 处理Crossplateform屏幕可变性

时间:2016-06-28 21:40:56

标签: screen xamarin.forms

我再次来这里询问有关Xamarin Forms的问题。

我想首先谈谈不同的屏幕。 Android是完美的,但iOS和WinPhone需要一些改编。这是什么意思?

机器人

enter image description here

- 主要布局正在填满所有屏幕。

- 顶级导航栏已转义,但它不是屏幕的一部分。

的iOS

enter image description here

- 主要布局填满了屏幕和顶部导航栏,因此,布局必须适应后果。

为了处理它,我为TOP

添加了20px的简单边距

WinPhone 8.1

enter image description here

- 主要布局正在填满屏幕。

- 顶级导航栏已转义,但它不是屏幕的一部分。

但是,在某些诺基亚/微软手机上,手机上没有硬件按钮。这些按钮是屏幕的一部分(numerics buttons),它们可以被隐藏,但如果没有,它就会参与到屏幕上...... 而且它真的很无聊.. 一些关于它的问题

- 我如何处理这些按钮的到来?是否存在Event告诉我何时可见?

- 底部硬件导航栏的大小是多少?

- 我可以执行某些操作来禁用/隐藏此Navbar或禁用用户禁用/隐藏它的可能性吗?

感谢阅读!

1 个答案:

答案 0 :(得分:1)

使用Device.OnPlatform查看特定平台上的更改,这些更改不需要特定于平台的代码。对于软件导航栏,我相信您可以在App.xaml.cs中的OnLaunched方法中添加类似的内容:

Windows.UI.ViewManagement.ApplicationView.GetForCurrentView().SuppressSystemOverlays = true;

有关详细信息,请参阅此SO问题:Navigation buttons hiding Windows Phone 8.1