手机屏幕分辨率怎么调整?

手机屏幕分辨率怎么调整?,第1张

vivo手机目前支持修改屏幕分辨率的机型有:iQOO 11、iQOO 11 Pro、X90、X90 Pro、X90 Pro+、iQOO 10 Pro、X80 Pro骁龙版、X80 Pro天玑版、X Note、iQOO 9 Pro、X70 Pro+、iQOO 8 Pro、Xplay6,路径为:设置--显示与亮度--屏幕分辨率,点击对应分辨率即可设置。

若有更多疑问,可进入vivo官网/vivo商城APP--我的--在线客服或者vivo官网网页版--下滑底部--在线客服--输入人工客服进入咨询了解。

获取屏幕分辨率的方式如下:

一、在activity中

1、DisplayMetrics dm = getResources()getDisplayMetrics();

int screenWidth = dmwidthPixels;

int screenHeight = dmheightPixels;

2、DisplayMetrics dm = new DisplayMetrics();

thisgetWindowManager()getDefaultDisplay()getMetrics(dm);

int screenWidth = dmwidthPixels;

int screenHeight = dmheightPixels;

二、在service中

DisplayMetrics dm = new DisplayMetrics();

dm = getResources()getDisplayMetrics();

int screenWidth = dmwidthPixels;

int screenHeight = dmheightPixels;

三、在非activity中,传一个Context进来调用

1、public ImageGalleryAdapter(Context c) {

myContext = c;

DisplayMetrics dm = cgetResources()getDisplayMetrics();

int screenWidth = dmwidthPixels;

int screenHeight = dmheightPixels;

}

2、public class BaseTools {

public static int getWindowWidth(Context context){

// 获取屏幕分辨率

WindowManager wm = (WindowManager) (contextgetSystemService(ContextWINDOW_SERVICE));

DisplayMetrics dm = new DisplayMetrics();

wmgetDefaultDisplay()getMetrics(dm);

int mScreenWidth = dmwidthPixels;

return mScreenWidth;

}

public static int getWindowHeigh(Context context){

// 获取屏幕分辨率

WindowManager wm = (WindowManager) (contextgetSystemService(ContextWINDOW_SERVICE));

DisplayMetrics dm = new DisplayMetrics();

wmgetDefaultDisplay()getMetrics(dm);

int mScreenHeigh = dmheightPixels;

return mScreenHeigh;

}

}

原文: https://blogcsdnnet/CrazyApes/article/details/116994631

之前一直不知道手机的DPI还可以修改,以前测试我都是用好几个测试机,或者通过修改开发者模式下的最小宽度去看适配的问题。呐,前段时间朋友说可以直接用adb改,赶紧记下来,省的以后忘了。

adb 命令

wm size [reset|WxH|WdpxHdp]

return or override display size width and height in pixels unless suffixed with 'dp'

查看分辨率: wm size

修改分辨率: wm size 1440x2560

还原初设置: wm size reset

测试机: 华为 FRD-DL00

wm density [reset|DENSITY]

查看密度: wm density

修改密度: wm density 480

还原设置: wm density reset

测试机: 华为 FRD-DL00

Security exception: Must hold permission androidpermissionWRITE_SECURE_SETTINGS

莫慌,打开下 开发者选项 中的 USB调试(安全设置) 就行了。

有时间可以都看一下,试一试,蛮好玩的。

说起来巧了,就像前言说的我不知道手机可以改DPI,之前一直是用的开发者模式下的最小宽度修改来测试。后来发现,这个其实也是修改了DPI,仔细想想density和px还有dp的关系,就突然能明白为啥了。

手机 开发者模式

首先得打开手机的 开发者模式 ,咋打开应该不用说了把。

不知道的小伙伴可以试着去找到你手机的 系统版本 那里一顿狂点。

然后就有惊喜了。

比如: Redmi 9A

咱就直接进入 开发者选项 里把。

找到 绘图 模块下的 最小宽度 栏目。

点开之后直接输入想要的最小宽度就行了。

注意: 这里是以 dp 为单位的。

如果你的UI设计图的宽度跟你的手机不符,开发的时候,可以尝试修改这个达到演示的目的。

如下: Redmi 9A

由于输入的是宽度值,无法直观的看到 density 的变化,但是咱们可以用方式一去验证下,就可以看到它的变化是改了 density 的值的。

机型:Redmi 9A

可见,在 分辨率 不变的前提下,修改了最小宽度之后,设备的 density 发生了变化。

Android中的dp在渲染前会将dp转为px,计算公式:

px = density dp;

density = dpi / 160;

px = dp (dpi / 160);

原文: https://blogcsdnnet/CrazyApes/article/details/116994631

参考: https://developerandroidgooglecn/guide/practices/screens_support

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

不同的layout

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

hdpi、mdpi、ldpi

在之前的版本中,只有一个drawable,而21版本中有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)。

要让程序界面保持一个方向,不随手机方向转动而变化的处理办法:

在AndroidManifestxml里面配置一下就可以了。

加入这一行android:screenOrientation="landscape"。

例如(landscape是横向,portrait是纵向):

以下是JAVA代码:

<xml version="10" encoding="utf-8"> 

<manifest xmlns:android="http://schemasandroidcom/apk/res/android" 

package="comraylinkit" 

android:versionCode="1" 

android:versionName="10"> 

<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="androidintentactionMAIN" /> 

<category android:name="androidintentcategoryLAUNCHER" /> 

</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) { 

superonConfigurationChanged(newConfig); 

if (thisgetResources()getConfiguration()orientation == ConfigurationORIENTATION_LANDSCAPE) { 

// land do nothing is ok 

} else if (thisgetResources()getConfiguration()orientation == ConfigurationORIENTATION_PORTRAIT) { 

// port do nothing is ok 

}

写一个支持多分辨的程序,基于16开发的,建立了三个资源文件夹drawable-hdpi drawable-mdpi drawable-ldpi,里面分别存放7272 4848 3636的icon图标文件。当我在G1(15的系统)上测试时,图标应该自适应为4848才对啊,但实际显示的是3636。怎么才能让其自适应 4848的icon图标呢 ?

解决办法 drawable-hdpi drawable-mdpi drawable-ldpi改成drawable-480X320 drawable-800X480的多分辨支持的文件夹。

vivo手机目前支持修改屏幕分辨率的机型有:iQOO 11、iQOO 11 Pro、X90、X90 Pro、X90 Pro+、iQOO 10 Pro、X80 Pro骁龙版、X80 Pro天玑版、X Note、iQOO 9 Pro、X70 Pro+、iQOO 8 Pro、Xplay6,路径为:设置--显示与亮度--屏幕分辨率,点击对应分辨率即可设置。

若有更多疑问,可进入vivo官网/vivo商城APP--我的--在线客服或者vivo官网网页版--下滑底部--在线客服--输入人工客服进入咨询了解。

欢迎分享,转载请注明来源:品搜搜测评网

原文地址:https://pinsoso.cn/shuma/1207642.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-09-06
下一篇2023-09-06

随机推荐

  • 贴牌代加工化妆品商标注册需要哪几类

    商标分类:化妆品行业应该注册哪些类别的商标      尽管面临国内经济增长与零售环境的不确定性,国内化妆品市场仍然保持超越整体可选消费的增速。新冠疫情在带来风险的同时也带来了机遇,在疫情冲击下部分国际化妆品集团业绩亏损较大,但同时一部分国际

    2024-04-15
    35400
  • 妮维雅晶纯焕亮和晶纯皙白区别

    妮维雅晶纯焕亮和晶纯皙白系列在功效上有以下区别: 晶纯焕亮系列。主要功效是去黄提亮,它适用于肌肤暗沉,肤色不均,以及熬夜疲劳的肌肤,因此,如果你是因为经常熬夜导致的肌肤暗沉,使用妮维雅晶纯焕亮系列可能会有很好的效果。 晶纯皙白系列。主要功效

    2024-04-15
    23700
  • 敏静臻颜肌底修护套盒功效

    敏静臻颜肌底修护套盒功效是补水,保湿,提亮肤色。敏静臻颜肌底修护套盒的产品规格是肌底修护冻干粉,肌底修护原液,肌底水养原液。产品成分是光果甘草、茶、母菊等提取物。产品功效是改善粗糙肌,深层渗透肌底,所有肌肤均可使用。敏静臻颜肌底修护套盒还能

    2024-04-15
    18700
  • 羽西鎏金粉底液怎么样,羽西虫草焕臻凝时修护精华液

    随着追求生活品质的理念越来越深入人心,很多的女性更喜欢选择高端的化妆品来使自己的容颜更加美丽,其中羽西这一品牌就深得女性消费者的关注,那么羽西鎏金粉底液使用后感觉怎么样羽西虫草焕臻凝时修护精华液又具有怎样的作用呢?羽西鎏金粉底液属于一种高遮

    2024-04-15
    24000
  • 伊思红参蜗牛霜怎么用,伊思红参蜗牛霜使用方法

    its skin伊思红参蜗牛霜是目前市场非常受欢迎的产品这一,虽然说通常面霜在使用上面并没有什么太需要注意的,不过品牌的不同也会有一些细节上的差别,以下我将为大家说明its skin伊思红参蜗牛霜的用法。伊思红参蜗牛霜怎么用1、彻底

    2024-04-15
    10800
  • 军训..用哪个牌子的防晒霜好?

    军训防晒霜品牌推荐:1、泰国mistine小蓝帽泰国的这款防晒霜的确做得很不错,同时很平价。小蓝帽主打的是身体防晒,大瓶一点,并且身体防晒和我们脸部防晒是同样重要的,像一些胳膊还有腿得晒伤,都会引起皮肤的一些泛红等。大家在做好脸部防晒的同时

    2024-04-15
    15600
  • 天气丹用完了 可以买小样装进去吗

    可以装小样进去。一般来说买小样会比正装更实惠一些的。天气丹是一个属于化妆品行业的品牌(商标号14892164),所有方是天气丹化妆品有限公司,该品牌于2016年5月21日在广东省广州市创立。品牌理念:做好民族品牌和产品,讲好中国文化和故事。

    2024-04-15
    16900

发表评论

登录后才能评论
保存