以编程方式在Android上设置屏幕密度

时间:2011-11-02 22:51:10

标签: android

我正在写一款我想在中高密度(320x480和480x800)上运行的游戏。为了在两个密度上运行应用程序,我必须像这样设置支持屏幕参数.-

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

我的问题是,在某些第二代设备(即HTC Desire)中,游戏以高清密度运行,但性能有点差,所以我试图“强制”这些设备的中等密度。

我设法获得了这样的电流密度.-

    DisplayMetrics dm = new DisplayMetrics(); 
    getWindowManager().getDefaultDisplay().getMetrics(dm);

和DisplayMetrics类似乎有一个'setTo'方法,但不确定它是否符合我的需要,也不确定我应该如何使用它。有没有办法实现这个目标?

谢谢!

1 个答案:

答案 0 :(得分:0)

我对此并不太了解,但你可以试试这个:

只需使用全屏布局,然后在内部定义另一个具有所需大小的布局。有点像这样:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <LinearLayout android:layout_width="200dip" 
        android:layout_height="150dip">
        <Button android:text="Button"
            android:layout_width="wrap_content" 
            android:layout_height="wrap_content"/>
    </LinearLayout>
</LinearLayout>

我在那里放了一个按钮,以显示内容的位置。

感谢