硬件加速打破了应用程序

时间:2012-03-19 12:27:21

标签: android hardware-acceleration

所以情况就是这样。

我想为Android做一个简单的游戏。这对我自己来说意味着教育,所以我想尝试很多可用的功能。

这就是问题所在。

启用硬件加速(通过应用程序或通过强制它在android 4中的开发人员选项中,使应用程序首先查看错误。它是由帖子底部的xml制作的非常简单的菜单。

<更新>

它出现在三星银河系中,它出错了。第一张照片来自模拟器(最终得到它开始...)它似乎在工作。

应该是_________________________这是

want is

渐变在屏幕上的第二张图片(没有编程)它不是反射或任何东西。你看到的正是屏幕显示的内容。

白天很难拍出更好的照片......

< / update>

我已经恢复到应用程序的最基本/空代码,这意味着唯一的代码是在主java类中设置此视图以显示并且问题仍然存在。

我看到的就好像主视图被调整为我的屏幕的1/4。并且所有视图(按钮drawables textviews)都画得非常小。

  • 我知道如何禁用硬件加速。
  • 我知道如何启用和禁用每个视图/活动以及诸如此类的东西。
  • 我知道如何'修复'该应用。

我想要的是,知道为什么。什么是硬件加速不能在简单的textview或linearlayout中。这里到底发生了什么?

很抱歉我的问题有点彻底。我只是没有找到任何关于此的信息。 “硬件加速打破我的应用程序”的通常答案似乎是“关闭它”。但这几乎不是“修复”

请注意,我没有使用文档中描述的任何与硬件加速不兼容的内容。

main.java:

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
}

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:id="@+id/ilogo"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="test"
    android:background="@drawable/logo"
    />
    <Button 
    android:id="@+id/play"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="Play"
    android:textSize="24sp"
    android:background="@drawable/button"
    android:textColor="@drawable/button_color"
    />
    <Button 
    android:id="@+id/highscore"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="highscore"
    android:textSize="24sp"
    android:background="@drawable/button"
    android:textColor="@drawable/button_color"
    />
    <Button 
    android:id="@+id/quit"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="Quit"
    android:textSize="24sp"
    android:background="@drawable/button"
    android:textColor="@drawable/button_color"
    />
</LinearLayout>

的manifest.xml:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="lima.ict"
  android:versionCode="1"
  android:versionName="1.0">
<application 
    android:label="@string/app_name" 
    android:icon="@drawable/ic_launcher" 
    android:hardwareAccelerated="true"
    >
    <activity  android:name="pong"
              android:label="@string/app_name"
              android:screenOrientation="portrait"
              android:configChanges="orientation|keyboardHidden"
              >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>
</manifest>

1 个答案:

答案 0 :(得分:3)

将targetSdk和minimumSdk放在清单上以解决显示小视图的问题。这发生在我身上,但显示屏幕扩大而不是一小部分,也许是因为硬件加速。