我为Android制作了一个计算器应用程序,并使用绝对布局来定位按钮和textview。它在我父亲的HTC Hero上看起来不错,但当我把它放在我的EVO上时,一切都被压缩到左上角。我认为这是因为我的屏幕分辨率比我爸爸的大,所以我在绝对布局中使用的像素测量值在我的手机上无法正确缩放,就像在爸爸身上一样,因为他的像素较少。
我认为如果我使用不同的布局,如线性布局,它将在所有不同分辨率的手机上正确缩放。我可以使用什么样的布局,如何将按钮放在我想要的位置?线性布局一切都只是堆叠在一起,我无法弄清楚如何将事物并排放置,就像计算器应用程序上的按钮一样。绝对布局是我能想到的唯一方式。有人可以给我一个例子,或者给我看一个你制作的计算器应用程序的布局,这样我就可以看到你是怎么做到的了吗?
答案 0 :(得分:2)
AbsoluteLayout
不推荐使用。
要并排放置元素,您可以将LinearLayout
与orientation="horizontal"
一起使用。
要处理扩展,请尝试使用layout_weight
参数。即如果你想并排创建一个两个按钮,宽度是一个完整的空间,每个按钮的总宽度的一半你可以做以下
<LinearLayout
android:orientation="horizontal"
android:layout_height="wrap_content"
android:layout_width="fill_parent">
<Button
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1" />
<Button
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1" />
</LinearLayout>
另外,请考虑使用RelativeLayout
,您可以将每个元素相对于之前放置的元素放置。
答案 1 :(得分:1)
停止使用绝对布局!!!!!
首选相对或嵌套线性布局来处理情况。 仅在特定设备上完全要求时才使用绝对布局,直到并且除非不这样做。
谢谢,