首先,我在模拟器上运行程序。在那之后,我在许多Android手机上运行。有些是非常小的,有些是旋转侧显示然后不能旋转回来,并且不能滚动(我没有这样做),有些是可以的。
我理解可能是由不同类型的屏幕引起的,我使用的是AbsoluteLayout,但我不知道如何解决这个问题。所以,我需要解决这个问题。有人可以帮忙吗?谢谢你
我做过的示例页面:
<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<TextView
android:id="@+id/usrname"
android:layout_width="wrap_content"
android:layout_height="21px"
android:layout_x="105px"
android:layout_y="179px"
android:text="Username :"
android:textSize="18sp"
android:textStyle="bold" />
<EditText
android:id="@+id/usrname_text"
android:layout_width="161px"
android:layout_height="wrap_content"
android:layout_x="74px"
android:layout_y="206px"
android:textSize="12sp" />
<TextView
android:id="@+id/pass"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_x="105px"
android:layout_y="252px"
android:text="Password :"
android:textSize="18sp"
android:textStyle="bold" >
</TextView>
<EditText
android:id="@+id/pass_text"
android:layout_width="163px"
android:layout_height="wrap_content"
android:layout_x="73px"
android:layout_y="279px"
android:password="true"
android:textSize="12sp" />
<Button
android:id="@+id/login"
android:layout_width="73px"
android:layout_height="wrap_content"
android:layout_x="75px"
android:layout_y="333px"
android:text="Login" />
<Button
android:id="@+id/cancle"
android:layout_width="73px"
android:layout_height="wrap_content"
android:layout_x="157px"
android:layout_y="333px"
android:text="Cancel" />
</AbsoluteLayout>
这些是来自Galaxy-S和模拟器的图片:
答案 0 :(得分:3)
这个问题你在清单文件中使用支持屏幕标签。有关进一步的参考,请参阅以下链接 Support screens
答案 1 :(得分:3)
开发人员文档在Supporting Multiple Screens的文章中有很多关于此的指导。根据最佳实践部分,他们建议不要使用AbsoluteLayout。如果您分享您要完成的任务,我们可能会建议一种适用于各种屏幕的方式。
答案 2 :(得分:1)
真的认为你应该看一下相对布局,特别是如果你现在开始使用android。它有点难,因为你不能为你的任何物品提供绝对坐标,但你可以相对于彼此放置你的物品。之后,您不必担心不同的屏幕尺寸。