我的应用程序的AVD解决问题

时间:2011-07-21 13:06:00

标签: android

我正在为Android平板电脑编写Android应用,我的平板电脑是运行Android 2.2的10.1“600x1024 Archos平板电脑

当我将应用程序扔到我的设备上时,它工作正常,没有任何问题,但是当我把它扔到AVD(600x1024,经过120,160,240和320 dpi测试)时,它只会打开一个小的显示区域。屏幕显示为600x1024屏幕,标准安卓桌面显示正常,但应用程序仅显示在屏幕中间的480x320框中。

一个例子: 这是运行桌面的AVD - http://www.flickr.com/photos/45270706@N03/5960464995/

这就是它运行我的应用程序 - http://www.flickr.com/photos/45270706@N03/5961001468/

如您所见,该应用认为屏幕尺寸为480x320 - 用于显示此文字的代码为:

canvas.drawText("Screen Width = " + canvas.getWidth(), 50, 20, paint);
canvas.drawText("Screen Height = " + canvas.getHeight(), 50, 40, paint);

哪个应该足够准确。

我要么在我的代码中做错了(我不认为我是一个新的'你好世界'做同样的事情),在设置AVD时做了些事情(尽管如果它完全相同的话)我使用GalaxyTab AVD)或者我不知道还有什么。

我已经浏览了一些现有的线程,但它们似乎没有涵盖我所拥有的问题。

如果它有任何区别,我使用Netbeans和NBAndroid作为我的IDE。

非常感谢任何帮助,如果有助于解决问题,我将很乐意提供我的任何代码。

提前致谢。

1 个答案:

答案 0 :(得分:0)

在您的AndroidManifest.xml中,您应确保已启用对所有可能的屏幕尺寸的支持,并且您的目标是高于版本3(通常最好定位以获得最大的SDK版本,并通过API调用支持最低版本)< / p>

  ...

  <uses-sdk android:minSdkVersion="3" android:targetSdkVersion="11"/>

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

</manifest>