我在正在做一个android游戏,我用的模拟器是854*480的,我用SurfaceView 画一张854*800的背景图,但是画出来就被放大了1.5倍,大大超过了模拟器的屏幕
求高手!

解决方案 »

  1.   

    你的图片分变率不对应你的屏幕分便率,所以会被放大,在sdk中用“drawable"查一下对应关系吧。有一张图很清楚地标注了各种对应关系,顺便确认一下模拟器的分辨率
      

  2.   

    建立一个名为drawable-nodpi文件夹,把图片资源都放入其中;
    在AndroidManifest.xml中添加 <supports-screens 
    android:largeScreens="true"
    android:normalScreens="true"
    android:smallScreens="true"
    android:anyDensity="true" />
      

  3.   

    你估计用的是1.5的SDK,1.5是不支持多分辨率的,它实际的分辨率是569×320,1.6以上的SDK才支持多分辨率
      

  4.   

    我在AndroidManifest加上就可以了!!!多谢!1!
      

  5.   

    你把图片放在drawable-nodpi文件夹中是很不好的,那样的话,图片不能被根据屏幕大小自动伸缩,如果你的程序在不同的机器上跑显示恐怕会有问题的,注意要要用png图片,才能自动伸缩不失真。你把图片分辨率改变一下480x720,应该就能适应你的模拟器,你可以看一下以下的SDK上的例子,跟你出现的问题很象,注意看那四个图显示的大小。http://developer.android.com/intl/ja/guide/practices/screens_support.html#compatibility-examples
      

  6.   

    模拟器把倍率改成160是可以,真机时240的,效果还是会放大!!!!!我的图片是加密打包放在accsets里面的!!!请教高手解决!!
      

  7.   

    单位一定要用dip,不能用pxdip是 device independent pixel,设备无关像素。总之你这个还是分辨率及density设置的不对。最好让图片自适应吧,自己做缩放,缩放到surfaceView的大小,可以适应不同的机器及不同的density。
      

  8.   

    不好意思,地址给的是日文的地址,所以你打不开,这次上英文的http://developer.android.com/guide/practices/screens_support.html
      

  9.   

    2楼说的分辨率指的是dpi,你选择一张图片,点击属性->高级,里边有个水平分辨率和垂直分辨率,那就是dpi