我们正在开发一款主要使用Framelayouts或Linearlayouts的应用。 在我们的应用程序中,我们提供5个不同的文件夹,从mdpi到xxxhdpi。
使用权重或DisplayDimensions使我们的应用在基本上每个智能手机设备上都看起来完全相同。 每个智能手机设备,但一个。三星S8。
问题如下:
这是几乎所有其他设备上的主菜单(S3,S4,S5,S6 -Edge,S7-Edge)
删除底部按钮并全屏显示应用程序会使情况更糟!
那么这里发生了什么? 简单 - 例如,S8使用与S7相同的宽度(1440px),但屏幕更高。在没有宽度的情况下增加屏幕高度会改变宽高比。
虽然大多数智能手机使用16:9的比例,但我认为S8的比例为20.5:9。 Ergo:屏幕看起来不像他们想象的那样。
现在,我们必须解决这个问题,我们不会让我们重新分配几乎所有活动,以适应s8。
有哪些选择? 在VISUAL STUDIO中可能有一个选项,以及#34;锁定"宽高比为16:9并且在顶部显示黑色条而不是拉伸布局?
我希望你们能帮助我们!那太棒了!
谢谢!
顺便说一句:我注意到我们团结的应用程序通常都是游戏看起来相同。在那里保持纵横比并且在侧面显示黑条。我希望,Visual Studio可以实现吗?答案 0 :(得分:0)
我找到了一种解决方法,非常简单。
if (Resources.DisplayMetrics.HeightPixels >= 2560)
{
intHeightOfDisplay = 2560;
}
else
{
intHeightOfDisplay = Resources.DisplayMetrics.HeightPixels;
}
基本上说,如果显示器的高度高于大多数手机"我只是将它设置为我的应用程序的最大高度。这无处不在。