0

我的应用程序在手机上运行良好,但是当我在 TAB UI 上运行它时变得太小。但我希望 UI 的大小与设备的大小相关。我需要在清单中添加任何内容吗?我在做什么错了。这是我的 XML

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" 
android:orientation="vertical">

<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Select The Game Level" />

<Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Level1" />

<Button
    android:id="@+id/button2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="level2" />

<Button
    android:id="@+id/button3"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="level3" />
 </LinearLayout>
Handset UI appearence

手机界面外观

Tablet UI appearence

平板 UI 外观

4

1 回答 1

1

让我们在这里尝试探索您的假设:

  1. 您的按钮大小设置为“wrap_content”。这意味着它取决于它包装的文本的大小。

  2. 您希望您的按钮根据显示应用程序的屏幕的视觉尺寸来更改视觉尺寸。

  3. 因此:您基本上期望字体大小会根据设备的屏幕而改变。

我认为这不是实现您想要的正确方法。这里有几个工具可以帮助你,我们来探索一个: weight 属性:android:layout_weight 是什么意思?

这是一组按钮的示例,在任何屏幕上看起来都相似(这里的重点是“相似”。但这就是您要实现的目标):

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

        <Button
            android:id="@+id/btnMainMenuTestUSB"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="Button1" />

        <Button
            android:id="@+id/btnMainMenuSetLocationNew"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="Button2" />
    </LinearLayout>

     <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

        <Button
            android:id="@+id/btnLineOfSight"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="Button3" />

               <Button
            android:id="@+id/btnTargetScreen"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="Button4" />
    </LinearLayout>
于 2013-08-26T08:34:54.917 回答