据我所了解,在Delphi for Android中,我要以像素为单位设置组件的宽度和高度。因此,在不同的屏幕上会有明显的差异。我希望有一种方法可以使用“dp单位”(或类似的单位)来设置大小。详情请参考密度无关性。
ActionBar: TToolBar;
ActionBar := TToolBar.Create(Form1);
ActionBar.Align := TAlignLayout.alTop;
ActionBar.Height := 30.0;
ActionBar.Parent := Form1;
正如您所见,我手动设置了尺寸。我拒绝使用布局的原因是因为我混合使用 FMX 和本地 Android 组件。
我希望我的操作栏在各种屏幕上看起来美观:)达到这个目的的正确方法是什么?
px = dp * (dpi / 160);
,dp = px / (dpi / 160);
。刚刚我发现dp := px * SharedActivityContext.getResources.getDisplayMetrics.density;
。 - naXa stands with Ukraine