官方的sdk发布的2.3是手机版本,但是我们现在很多平板电脑都是用的这个系统,我想问下,如果我开发2.3系统的平板电脑,800*600的或者1024*768的,直接设置那个高度和宽度可以吗,有没有专门针对平板电脑的解决方法呢?

解决方案 »

  1.   

    要兼容不同的设备是不能够硬编码的,你可以在UI设计的时候用一些相对的属性设置,比如:
    match_parent,wrap_content等,这样就能够自适应了
      

  2.   

    可以当然可以,都是软件。这种分辨率跟LCD&TP都是配套的,用2.3会有很多地方要改成大分辨率的地方,比如所以显示小图标之类,不然效果会差一些。
      

  3.   

    可以的,这个跟LCD有关系。在xml中不要设置px,尽量用dp。
    而且在java中如果有设置属性的高度,宽度的话,用以下的方法转化一下
     /** 
         * 根据手机的分辨率从 dp 的单位 转成为 px(像素) 
         */  
        public static int dip2px(Context context, float dpValue) {  
            final float scale = context.getResources().getDisplayMetrics().density;  
            return (int) (dpValue * scale + 0.5f);  
        }  
      
        /** 
         * 根据手机的分辨率从 px(像素) 的单位 转成为 dp 
         */  
        public static int px2dip(Context context, float pxValue) {  
            final float scale = context.getResources().getDisplayMetrics().density;  
            return (int) (pxValue / scale + 0.5f);  
        }  
      

  4.   

    楼主,你确认你们的平板电脑不是3.2的系统?
    3.2及之后的才是针对平板的系统。多分辨率的问题建议别在代码中写,可以在布局文件的时候放多套(针对多分辨率的解决方法,文件夹区分)
    针对不同密度的问题,用dp解决即可。平板电脑大多在屏幕下边存在自带的导航bar,这个导航bar会占用显示界面的大小
    不同密度的情况下,bar的大小可能不同,所以在设计界面的时候要充分考虑