android - android 7中的自定义控件高度无效
问题描述
我需要为选择器控件实现我自己的自定义渲染器。这是我到目前为止的代码:
后面的代码:
public class DMGPicker : Picker
{
}
XAML
<localPicker:DMGPicker
IsVisible="False"
x:Name="Login_Language" />
对于安卓:
class DMGPickerCustomRenderer : PickerRenderer
{
public DMGPickerCustomRenderer(Context context) : base(context)
{
}
protected override void OnElementChanged(ElementChangedEventArgs<Picker> e)
{
base.OnElementChanged(e);
if (Control != null)
{
var castControl = (DMGPicker)e.NewElement;
global::Android.Graphics.Color _color = global::Android.Graphics.Color.Rgb(142, 142, 142);
if (castControl.BackgroundColor != null)
{
_color = castControl.BackgroundColor.ToAndroid();
}
GradientDrawable gd = new GradientDrawable();
gd.SetStroke(3, global::Android.Graphics.Color.ParseColor("#888888"));
gd.SetCornerRadius(20);
gd.SetColor(_color);
Control.SetBackground(gd);
Control.SetPadding(20, 20, 20, 20);
Control.SetHeight(135);
Control.SetHintTextColor(global::Android.Graphics.Color.Rgb(192, 192, 192));
}
}
}
我的控制工作正常,但控制高度有问题。在 android oreo 8.1 上,它的高度设置正确,但在 android 7 中,控件太大。这里是截图
安卓7.0
安卓8.1
我的控制高度设置为 135,但我认为这个问题与屏幕分辨率有一些不常见但我不确定。
如何在所有 android 版本 (>=7.0) 中强制此控件的高度?
解决方案
推荐阅读
- javascript - D3.js:从 Stack 函数计算 y 比例
- firebase - 缓存:Cloud MemoryStore vs Cloud Firestore vs Realtime DB?
- python - 在 Python 中创建实例
- maven - 我不能用 maven 创建 .war
- docker - 如何将容器日志泊坞到本地文件?
- slack-api - 在对话框 Slack 中使用提及
- r - 带有 2 个断点的断棒(或分段)回归
- node.js - 树莓派对信标的检测不一致
- angular - angular 6、表格、按钮点击计算
- crystal-lang - Amber Crecto:与 LEFT JOIN 的预加载关联