Java 如何创建通用UI设计?

Java 如何创建通用UI设计?,java,android,Java,Android,我想向经验丰富的Android开发者学习,就像你为不同的屏幕开发UI一样?例如,现在我有一个问题: 我有一个元素(TextView),它应该尽可能靠近左边,但不是背靠背,而是有一个轻微的缩进。相应地,屏幕越大,因此应该增加填充。如果将其设置为固定的(px/dp),如layout\u marginLeft,则所有屏幕都将保持固定 或者,就像我有一个按钮,它的宽度大约为60%,而剩下的40%为空。在不指定固定大小的情况下,如何做到这一点 是否有可能设计一个通用屏幕,它将拉伸以压缩元素之间的距离(如我

我想向经验丰富的Android开发者学习,就像你为不同的屏幕开发UI一样?例如,现在我有一个问题:

我有一个元素
(TextView)
,它应该尽可能靠近左边,但不是背靠背,而是有一个轻微的缩进。相应地,屏幕越大,因此应该增加填充。如果将其设置为固定的
(px/dp)
,如
layout\u marginLeft
,则所有屏幕都将保持固定

或者,就像我有一个按钮,它的宽度大约为60%,而剩下的40%为空。在不指定固定大小的情况下,如何做到这一点

是否有可能设计一个通用屏幕,它将拉伸以压缩元素之间的距离(如我的情况),并做其他类似的事情?还是每个屏幕都需要创建一个资源目录,并为每个屏幕创建一个单独的设计?你通常是怎么做的

提前感谢您的回复,这对我来说非常重要。

一些提示:

  • 如果希望视图彼此对齐,请使用RelativeLayout
  • 当你想要60%-40%的东西时使用
  • 当以上布局都不适合您时使用,即您希望自定义其外观和感觉
  • 可以使用
  • 始终使用dip,设备独立像素,而不是px
  • 阅读本文-
  • 最后
谢谢。但我的问题是——我该怎么做呢?对于字体大小,你应该使用SP(缩放像素)。但是,是的,对于其他所有的事情,你都应该使用DP.SP,这对你没有多大帮助。在大分辨率下,字体仍然很小。@user1023177您可能会从上述提示中获得一定程度的成功,但我认为最终,开发人员会为不同的屏幕大小制作不同的布局。但是如何设置布局?marginLeft以使其可扩展?这是一个非常普遍的问题。谷歌提供了一些关于最佳实践的指导和建议(在雷诺的回答中链接到),但你不应该期望我们预测你问题的细节,然后为你解决它们。阅读指导原则和最佳实践,尝试实现您的UI,如果遇到困难,请提出这些问题