xamarin - 如何为 Xamarin 表单中的条目提供动态填充?
问题描述
如何在 Xamarin 表单中为每个移动屏幕尺寸上看起来相同的条目提供动态填充?我正在尝试使用 EntryRenderer 以这种方式应用填充。
Control.SetPadding(20,20,0,0);
在小屏幕尺寸上它看起来很完美,但在大屏幕尺寸上它表现不同并且看起来很奇怪。
解决方案
Xamarin.Essentials nuget具有获取设备显示信息的功能。
使用Xamarin.Essentials
nuget 时,请确保遵循他们的入门步骤。
您可以使用它来获取有关屏幕的信息,例如:
var screenWidth = DeviceDisplay.ScreenMetrics.Width; // in pixels
var screenHeight = DeviceDisplay.ScreenMetrics.Height: // in pixels
var screenDensity = DeviceDisplay.ScreenMetrics.Density;
然后使用该信息的某种组合来设置您的填充:
if(screenWidth <= 400)
{
Control.SetPadding(20,20,0,0);
}
else if(screenWidth > 400 && screenWidth < 500)
{
Control.SetPadding(30,20,0,0);
}
else if // continue with whatever conditions need checked
请注意,我screenWidth
在示例中使用了,但screenDensity
可能更适合您的问题。您可能需要调整几次,直到找到有效的方法。
推荐阅读
- python-rq - RQ Worker 批量处理作业
- javascript - 键盘输入后Android Chrome点击不起作用
- python - 如何在python中比较日期?
- reactjs - 在 React JS 中发生事件后不出现值
- python - python find 函数总是给 -1 和 .upper()
- python - 如何在pygame中制作地图?
- reactjs - 带有 React Hook 表单和 Yup 模式验证的 Elastic UI DatePicker
- python - 记录 Discord.py 中给定的角色
- java - 如何在 Android 中使用 TextInputLayout 和 EditText
- docker - 无法在 Windows 上的 127.0.0.1:2375 上公开 Docker API