Android的Configuration系统设置

Android的Configuration系统设置,第1张

概述Android中Configuration类专门用于描述手机设备上的配置信息,这些配置信息既包括用户特定的配置项,也包括系统的动态设备配置。通过Configuration对象提供的基本属性来获取系统的配置信息,例如:publicintdensityDpi;//得到设备的密度publicfloatfontScale

AndroID中Configuration类专门用于描述手机设备上的配置信息,这些配置信息既包括用户特定的配置项,也包括系统的动态设备配 置。

通过Configuration对象提供的基本属性来获取系统的配置信息,例如:

    public int densityDpi;      //得到设备的密度    public float FontScale;     //获取当前用户设置的字体的缩放因子    public int KeyboardHIDden;  //该属性会返回一个boolean值用于表示当前的键盘是否可用,该属性不仅                                                                                                                //会判断系统的硬件键盘,也会判断系统位于屏幕上的软键盘,如果该系统                                    //的硬 件键盘不可用但软键盘可用该属性会返回KEYBOARDHIDDEN_NO,只                                 //有当两个键盘都不可用的时候才返回KEYBOARDHIDDEN_YES    public int keyboard;        //获取当前设备所关联的键盘的类型    public Locale locale;       //获取用于当前的Locale。locale:获取用户当前的语言环境    public int mcc;             //得到移动信号的国家码    public int mnc;             //得到移动信号的网络码    public int navigation;      //判断系统上方向导航设备的类型。该属性的返回值:                                 //NAVIGATION_NONAV(无导航)、NAVIGATION_DPAD(DPAD导航)、                                 //NAVIGATION_trackball(轨迹球导航)、NAVIGATION_WHEEL(滚轮                                 //导航)    public int orIEntation;     //得到系统屏幕的方向,该属性将会返回ORIENTATION_LANDSCAPE(横向                                 //屏幕),ORIENTATION_PORTRAIT(竖向屏幕),ORIENTATION_SQUARE(方                                 //形屏幕)三个属性值之一    public int touchscreen;     //获取系统触摸屏的触摸方式。该属性的返回值:                                 //touchSCREEN_NOtouch(无触摸屏)、touchSCREEN_STYLUS(触摸笔                                 //式触摸屏)、touchSCREEN_FINGER(接收手指的触摸屏)等属性值

如果程序需要监听系统设置的更改,这里就需要重写Activity的onConfigurationChanged(Configuration newConfig)的方法,例如我们要实现设置系统的屏幕更改方向并监听,需要有以下2步:
1. 指定清单文件中的configChanges属性

<activity androID:name=".MainActivity"             androID:configChanges="screenSize|orIEntation">            <intent-filter>              <action androID:name="androID.intent.action.MAIN"/>              <category androID:name="androID.intent.category.LAUNCHER" />            </intent-filter>    </activity>

2. 设置按钮的点击事件,并重写回调方法:

public voID changeOri(VIEw vIEw){        Configuration configuration=getResources().getConfiguration();        if(configuration.orIEntation==Configuration.ORIENTATION_LANDSCAPE){            //当前是横屏,需要更改为竖屏            MainActivity.this.setRequestedOrIEntation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);        }        if(configuration.orIEntation==Configuration.ORIENTATION_PORTRAIT){            //当前是竖屏,需要更改为横屏            MainActivity.this.setRequestedOrIEntation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);        }    }     @OverrIDe    public voID onConfigurationChanged(Configuration newConfig) {        super.onConfigurationChanged(newConfig);        String screen=newConfig.orIEntation==Configuration.ORIENTATION_LANDSCAPE?"横屏":"竖屏";        Toast.makeText(this,"当前屏幕的状态是:"+screen,Toast.LENGTH_SHORT).show();    }

参考:

https://www.runoob.com/w3cnote/android-tutorial-configuration.html

https://blog.csdn.net/qq_35427437/article/details/85988493

 

 

总结

以上是内存溢出为你收集整理的Android的Configuration系统设置全部内容,希望文章能够帮你解决Android的Configuration系统设置所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1039862.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存