问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

安卓app设计屏幕分辨率适配问题怎么解决?

发布网友 发布时间:2022-04-25 06:11

我来回答

1个回答

热心网友 时间:2022-06-29 20:15

想要Android应用适应不同尺寸的屏幕,思路如下:

    不同的layout
    Android手机屏幕大小不一,有480x320, 640x360, 800x480,让app适应不同屏幕,需要在res目录下创建不同的layout文件夹,比如layout-640x360,layout-800x480,所有的layout文件在编译之后都会写入R.java里,而系统会根据屏幕的大小自己选择合适的layout进行使用。

    hdpi、mdpi、ldpi
    在之前的版本中,只有一个drawable,而2.1版本中有drawable-mdpi、drawable-ldpi、drawable-hdpi三个,这三个主要是为了支持多分辨率。

    drawable- hdpi、drawable- mdpi、drawable-ldpi的区别:
    (1)drawable-hdpi里面存放高分辨率的图片,如WVGA (480x800),FWVGA (480x854)
    (2)drawable-mdpi里面存放中等分辨率的图片,如HVGA (320x480)
    (3)drawable-ldpi里面存放低分辨率的图片,如QVGA (240x320)
    系统会根据机器的分辨率来分别到这几个文件夹里面去找对应的图片。
    更正:应该是对应不同density 的图片
    在开发程序时为了兼容不同平台不同屏幕,建议各自文件夹根据需求均存放不同版本图片。
    屏幕方向:
    横屏竖屏自动切换:
    可以在res目录下建立layout-port-800x600和layout-land两个目录,里面分别放置竖屏和横屏两种布局文件,这样在手机屏幕方向变化的时候系统会自动调用相应的布局文件,避免一种布局文件无法满足两种屏幕显示的问题。

    不同分辨率横屏竖屏自动切换:
    以800x600为例 :
    可以在res目录下建立layout-port-800x600和layout-land-800x600两个目录
    不切换:
    以下步骤是网上流传的,不过我自己之前是通过图形化界面实现这个配置,算是殊途同归,有空我会把图片贴上来。
    还要说明一点:每个activity都有这个属性screenOrientation,每个activity都需要设置,可以设置为竖屏(portrait),也可以设置为无重力感应(nosensor)。

    要让程序界面保持一个方向,不随手机方向转动而变化的处理办法:
    在AndroidManifest.xml里面配置一下就可以了。

    加入这一行android:screenOrientation="landscape"。
    例如(landscape是横向,portrait是纵向):

    以下是JAVA代码:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="com.ray.linkit" 
android:versionCode="1" 
android:versionName="1.0"> 
<application android:icon="@drawable/icon" android:label="@string/app_name"> 
<activity android:name=".Main" 
android:label="@string/app_name" 
android:screenOrientation="portrait"> 
<intent-filter> 
<action android:name="android.intent.action.MAIN" /> 
<category android:name="android.intent.category.LAUNCHER" /> 
</intent-filter> 
</activity> 
<activity android:name=".GamePlay" 
android:screenOrientation="portrait"></activity> 
<activity android:name=".OptionView" 
android:screenOrientation="portrait"></activity> 
</application> 
<uses-sdk android:minSdkVersion="3" /> 
</manifest>

    另外,android中每次屏幕的切换动会重启Activity,所以应该在Activity销毁前保存当前活动的状态,在Activity再次Create的时候载入配置,那样,进行中的游戏就不会自动重启了! 

    有的程序适合从竖屏切换到横屏,或者反过来,这个时候怎么办呢?可以在配置Activity的地方进行如下的配置android:screenOrientation="portrait"。这样就可以保证是竖屏总是竖屏了,或者landscape横向。

    而有的程序是适合横竖屏切换的。如何处理呢?首先要在配置Activity的时候进行如下的配置:android:configChanges="keyboardHidden|orientation",另外需要重写Activity的 onConfigurationChanged方法。实现方式如下,不需要做太多的内容:

    @Override 
    public void onConfigurationChanged(Configuration newConfig) { 
    super.onConfigurationChanged(newConfig); 
    if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) { 
    // land do nothing is ok 
    } else if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) { 
    // port do nothing is ok 

    }

    写一个支持多分辨的程序,基于1.6开发的,建立了三个资源文件夹drawable-hdpi drawable-mdpi drawable-ldpi,里面分别存放72*72 48*48 36*36的icon图标文件。当我在G1(1.5的系统)上测试时,图标应该自适应为48*48才对啊,但实际显示的是36*36。怎么才能让其自适应 48*48的icon图标呢 ?
    解决办法 drawable-hdpi drawable-mdpi drawable-ldpi改成drawable-480X320 drawable-800X480的多分辨支持的文件夹。

声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
围裙面料有哪些材质 围裙款式种类关于围裙款式种类 辉瑞、莫德纳和强生计划推出 RSV 疫苗,年内或将向监管机构 Pfizer/BioNTech新冠mRNA疫苗选择了BNT162b2启动临床2/3期 辉瑞新冠疫苗什么技术 美国辉瑞预防什么 免责条款的意思是什么? 微电子专业的女生就业前景如何? 土建工程清包五项是什么 在工地承包五项、具体的都应该干些什么 爵迹多久可以在手机上看 带诚字的四字成语 如何Android屏幕的纯代码界面适配 哪个APP可以免费看爵迹3和4 郭敬明的小说《爵迹》全册是否完结?能否用手机软件阅读?用什么软件好吖?在线求解! 请问哪个小说软件可以看完结的爵迹临界? 为什么说Android开发屏幕适配很难 华为方向锁定在哪里 爵迹电影在哪个视频可以看? 初学android,问个问题。怎么样能让android的widget适配不同的分辨率进行布局呢? 电影爵迹可以在哪个软件上看 枸杞和蒲公英可以一起泡水喝吗 诚信的诚组什么词 哪里可以看到郭敬明本人的爵迹小说? 要免费的 谢谢~~~ 为什么华为手机不能自动旋转了 诚是什么信是什么 爵迹电影现在 在哪个网站能看的到 android布局文件怎么适配不同大小 诚字在文言文中都有哪些意思? 人生之路漫长难熬,人在迷茫时该干什么? 哪里可以看 郭敬明 爵迹2 诚是什么意思呢 android 字体是怎么屏幕适配的 安卓面试时总是被问到listview优化和布局适配不同机型,大图片处理问题 物理p的公式 物理公式p=w/t是什么意思 ? 物理公式:p=w/t 请问,物理公式:P=Fv是什么意思?代表什么?怎么得? 手机屏幕出现黑色阴影越来越大怎么办? 人在迷茫的时候应该做什么? 处于人生的迷茫时期,到底该怎么办? 请问物理公式P=FV如何解释且该公式有何用处 人迷茫时该怎么办? 功率p等于什么? 生活感到迷茫的时候应该怎么办 初中物理的公式:P=FV是什么意思 人生迷茫的时候我们怎么办 人在迷茫时应该怎么做? 生活迷茫时,该怎么办? 在人生迷茫的时期,你们都是如何做出选择的?
  • 焦点

最新推荐

猜你喜欢

热门推荐