0

更新

添加以下样式并为我的应用程序设置它后,我已经让它绘制了整个屏幕:

<resources>
    <style name="app_theme" parent="android:Theme.NoTitleBar">
        <item name="android:windowBackground">@color/green</item>
    </style>    
</resources> 

在开发我的第一个 Android 应用程序时,我意识到我的应用程序视图永远不会跨越整个屏幕,而我下载的其他示例项目却可以。为了测试这一点,我创建了一个基本的活动类并将 a 的背景设置TextView为绿色,以查看它的跨度。如果这是一个愚蠢的问题,请原谅我,但我对此并不陌生。

这是屏幕截图:

在此处输入图像描述

这是完整的 HomeActivity 源代码:

public class HomeActivity extends Activity
{
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
}

这是布局文件(/res/layout/main.xml):

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView  
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:text="Hello World, StackOverflow"
    android:background="#00FF00"
    />
</LinearLayout>

这是模拟器中另一个运行良好的应用程序的屏幕截图,横跨整个窗口:

在此处输入图像描述

编辑

我将我的 XML 文件编辑为:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#00FF00"
    >
<TextView  
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:text="Hello World, StackOverflow"
    />
</LinearLayout>

然后清理并建造,运行并获得相同的确切视图。

编辑 2

我按要求删除了“垂直”方向线,没有变化。

这是我的 AndroidManifest:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.blah.blah.myCrap"
          android:versionCode="1"
          android:versionName="1.0">

    <uses-permission android:name="android.permission.INTERNET"></uses-permission>

    <application android:label="@string/app_name" >
        <activity android:name="HomeActivity"
                  android:label="@string/app_name">
        <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
</manifest> 

在我的清单中添加了以下内容<application>

<supports-screens android:resizeable="true"
                      android:smallScreens="true" 
                      android:normalScreens="true" 
                      android:largeScreens="true"

                      android:anyDensity="true" />

还是尺寸不对。

4

2 回答 2

1

在 Android 2.2 模拟器上运行良好

在此处输入图像描述

于 2012-05-11T18:31:54.063 回答
1

检查您的清单以查看它是否支持不同的屏幕尺寸。您可以在此 QA 中找到更多信息(fill_parent 不会在 LinearLayout 中填充整个屏幕

显然,如果您不指定它支持小、正常、大、任意密度的屏幕尺寸,您可能会遇到布局无法填满整个屏幕的问题。

于 2012-05-11T18:38:56.790 回答