android - 如何修复多个屏幕尺寸的应用程序

标签 android android-layout android-emulator

我已经在 2.2 版本中创建了一个应用程序,如果我在普通手机上运行它就可以正常工作。但在平板电脑中它仍然可以正常工作,但标签、textveiw 和其他东西仍保持与手机相同的大小。

我已经使用了这段代码,但它不起作用。

<supports-screens 
android:largeScreens="true" 
android:normalScreens="true" 
android:smallScreens="true" 
android:anyDensity="true" /> 

他们是否还有其他方法可以让我的应用程序在平板电脑上看起来也不错。

我的 xml 代码,我在表格布局中使用它

<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent" android:layout_height="fill_parent" 
    android:id="@+id/mainlayout"
    android:background="#ffffff" android:fadingEdge="horizontal|vertical" 
  >
    <RelativeLayout android:id="@+id/header_login"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="#000000"
        android:gravity="center"
        android:orientation="horizontal" >

        <ImageView  android:id="@+id/login_left"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true"
            android:paddingBottom="5px"
            android:paddingLeft="3px"
            android:paddingTop="5px"
            android:src="@drawable/sap_new" />
    </RelativeLayout>

 <ImageView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
          android:layout_gravity="center_horizontal"
         android:paddingTop="5dip"
            android:src="@drawable/login1" >
        </ImageView>
    <TableRow android:gravity="center" android:paddingTop="15px" android:layout_width="fill_parent">
         <TextView android:text="Username " android:layout_column="0" android:textColor="#000000" android:id="@+id/usrLbl"
            android:layout_width="wrap_content" android:gravity="right" />
        <TextView android:text="" android:layout_column="1"
            android:gravity="left" android:width="20dip" android:textColor="#FF0000" /> 
        <EditText android:id="@+id/sapuser" android:hint="Required"
            android:layout_column="2" android:width="150dip" android:paddingLeft="5dip"
             android:layout_marginRight="15dip" android:text="" android:singleLine="true" />
    </TableRow>
    <TableRow android:gravity="center"  android:layout_width="fill_parent">

        <TextView android:text="Password " android:layout_column="0" android:textColor="#000000"
             android:gravity="right" android:id="@+id/passLbl" />
        <TextView android:text="" android:layout_column="1"
            android:gravity="left" android:textColor="#FF0000" /> 
        <EditText android:id="@+id/password" android:hint="Required"
            android:paddingLeft="5dip" android:layout_column="2"
             android:password="true" android:text=""
            android:singleLine="true" android:layout_marginRight="15dip"   />
    </TableRow>

    <TableRow android:gravity="center"  android:layout_width="fill_parent">
    <TextView android:text="" android:layout_column="0"
             android:gravity="right"  />
        <TextView android:text="" android:layout_column="1"
            android:gravity="left" android:textColor="#FF0000" /> 
    <CheckBox
          android:id="@+id/ShowPassword"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:textSize="15dp"
          android:text="Show Password" android:textColor="#000000" android:background="@drawable/checkbox_background" android:button="@drawable/checkbox" /> 
    </TableRow>
    <TableRow android:gravity="center"  android:layout_width="fill_parent">
    <TextView android:text="" android:layout_column="0"
             android:gravity="right"  />
        <TextView android:text="" android:layout_column="1"
            android:gravity="left" android:textColor="#FF0000" /> 
    <CheckBox
          android:id="@+id/SavePassword"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:textSize="15dp"
          android:text="Save Password" android:textColor="#000000" android:background="@drawable/checkbox_background" android:button="@drawable/checkbox" /> 
    </TableRow>
    <LinearLayout android:paddingTop="10px" android:layout_width="fill_parent" android:gravity="center_horizontal">

            <Button android:layout_width="wrap_content" android:id="@+id/submit"
                android:layout_height="wrap_content" android:text="Login"
                android:gravity="center"  />





    </LinearLayout>

</TableLayout>

最佳答案

不要以 px 为单位设置 View 大小或文本大小。 使用 dp

查看官方documentation .

关于android - 如何修复多个屏幕尺寸的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14335746/

相关文章:

android - 操作系统终止我的 Activity 后,SlidingUpPanelLayout 不会在恢复时崩溃

android - 如何从android中的ArrayAdapter类调用下一页

Android 模拟器无法访问我工作站上可用的网络

android - Joda DateTime 时区未正确显示

android - .apk 文件的反编译

android - DrawerLayout 中的 EditText

android - 如何使用 android 和 SensorSimulator 获取传感器值并将它们存储在数据库中

android - 展开标题时如何更改展开标题颜色?

android - 使用 Google 地方信息 API

Android 模拟器无法在 Linux 中启动