我正在开发一款适用于单一尺寸屏幕的应用程序,并且设计非常复杂,因此我可以使用绝对尺寸来处理所有内容。
当我为视图指定一个非常小的尺寸时问题就开始了,Android似乎没有使内容适应这些小尺寸。我这里有3个例子:
EditText
:即使我使用了较小的文字大小,文字也不能很好地居中...我该如何居中?Spinner
:右边有足够的空间。我该如何使用它?CheckBox
:我们只看到一个角而不是整个框...为什么?答案 0 :(得分:0)
Android似乎没有使内容适应这些小尺寸
在达到特定的最小尺寸后,Android将不会采用,我强烈建议您考虑使用ScrollView
并更改布局,但如果您仍坚持,请尝试以下操作:
将EditText
的背景设置为null,您将理解这完全归功于9补丁背景的填充。之后转到Android Asset Studio并创建较小的背景,或者您也可以在xml drawable中执行此操作,请检查此link。要使文字居中,请android:gravity="center"
上使用EditText
。
如上所述,相同的9个补丁背景问题,旋转器的bacground图像是这样做的,在添加某些填充后将其内容放在箭头的左边。尝试将背景设置为自定义少填充9补丁。
同样的问题,只需为CheckBox
制作较小的drawable。请参阅此link。
答案 1 :(得分:0)
答案 2 :(得分:0)
尝试在TextView派生类中使用以下替代...为我工作:
@Override
public int getCompoundPaddingTop() {
return 1;
}
@Override
public int getCompoundPaddingBottom() {
return 1;
}
@Override
public int getCompoundPaddingLeft() {
return 1;
}
@Override
public int getCompoundPaddingRight() {
return 1;
}
答案 3 :(得分:0)
除此之外,如果您仍想使用这些内容,请遵循以下步骤:
android:gravity
到EditText中的center
。