`
liujianguangaaa
  • 浏览: 235105 次
  • 性别: Icon_minigender_1
  • 来自: 湖南
社区版块
存档分类
最新评论

如何动态获取屏幕方向

阅读更多

我们知道 android在屏幕旋转以后,有些情况会销毁当前的Activity. 也就是说从新启动个Activity. 然后 跑onCreate()  onStart()等流程.

还有中情况是 屏幕旋转后,不从新启动这个Activity. 只做些动作.

第一中情况是正常情况的流程. 第二中情况是你在manifest.xml里注册了android:config后的动作,你告诉了喜欢,当哪写配置改变后会做什么.

那如何动态检测当前屏幕方向及大小呢?


public class orientation extends Activity {
    TextView textview=null;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        textview=(TextView)findViewById(R.id.textview);
        int screenwidth=getWindowManager().getDefaultDisplay().getWidth();
             int screenheight=getWindochanger codewManager().getDefaultDisplay().getHeight();
             Log.d("orient", "now the screen width is :"+screenwidth+"screen height is:"+screenheight);

        int orient=getRequestedOrientation();
        if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE)
        {
            Log.d("orient", "now the screen orient is landscape");
        }
        else if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT)
        {
        Log.d("orient", "now the screen orient is portrait");
        }
    }
}

哎,这样就很明显了,问题的根源是配置改变,那就找配置信息.getResources().getConfiguration即可获得当前配置对象.

这样读就可以了.

当然getWindowManager().getDefaultDisplay().getHeight() getWidth()就获得了高度,宽度.获得值会随屏幕方向改变而改变.

分享到:
评论

相关推荐

    强制改变屏幕方向的小工程

    1. **获取当前屏幕方向**:使用`Display`对象的`getRotation()`方法可以获取到屏幕当前的旋转角度,结合` Surface.ROTATION_0`, `Surface.ROTATION_90`, `Surface.ROTATION_180`, `Surface.ROTATION_270`来判断是横...

    安卓获取当前屏幕的屏幕尺寸(像素)

    - 在处理屏幕尺寸时,应考虑设备的屏幕方向,因为横屏和竖屏的宽度和高度可能会互换。 - 为了适配不同屏幕尺寸,可以使用Android的布局资源目录(如`layout-sw600dp`,`layout-sw720dp`),这些目录会根据设备的...

    js获取屏幕分辨率的方法

    ### JS 获取屏幕分辨率的方法 在Web开发中,获取用户的屏幕分辨率是实现响应式设计和优化用户体验的重要步骤之一。本文将详细介绍如何使用JavaScript来获取屏幕分辨率,并探讨这些信息如何帮助我们实现div元素的...

    屏幕坐标获取器

    屏幕坐标通常以像素为单位,左上角被视为坐标系的原点(0,0),向右和向下增加表示x轴和y轴的正方向。 该压缩包包含以下文件: 1. "屏幕坐标获取工具0.1.exe" - 这是主要的程序文件,用户可以通过运行这个可执行...

    jQuery 获取屏幕高度和宽度

    本文将详细讲解如何使用jQuery获取屏幕的高度和宽度,这对于创建响应式网页设计或者根据屏幕尺寸调整元素布局至关重要。 首先,我们需要了解什么是屏幕高度和宽度。屏幕高度是指浏览器窗口可视区域的垂直尺寸,而...

    LABVIEW获取屏幕坐标.rar

    《使用LabVIEW获取屏幕坐标详解》 在LabVIEW编程环境中,获取屏幕坐标是一项常见的任务,尤其是在进行软件测试或用户界面设计时。LabVIEW作为一个强大的图形化编程语言,提供了丰富的功能来帮助开发者实现这一功能...

    QT安卓屏幕动态旋转

    2. **屏幕方向检测**:Android系统提供了API来获取当前的屏幕方向,如`SensorManager.getRotationMatrix()`和`Display.getRotation()`。这些函数可以帮助我们判断设备是处于横屏还是竖屏。 3. **QT GUI更新**:当...

    Android获取屏幕方向及键盘状态的小例子

    在Android应用开发中,了解设备的屏幕方向和键盘状态是...以上就是关于Android获取屏幕方向及键盘状态的相关知识,通过合理利用这些API和技巧,开发者可以更好地适应不同设备和用户交互场景,提供更优质的用户体验。

    Android 屏幕旋转(改变屏幕方向).rar

    //获取屏幕朝向   switch(o){ //判断屏幕当前朝向   case ActivityInfo.SCREEN_ORIENTATION_PORTRAIT:   et.setText("当前屏幕朝向为:PORTRAIT");   break;   case ActivityInfo.SCREEN_ORIENTATION_...

    AutoJs源码-判断屏幕方向是横屏还是竖屏

    AutoJs源码-判断屏幕方向是横屏还是竖屏。本资源购买前提醒:本源码都是实际autojs项目模板,安装好autojs直接运行即可打开。1、支持低版本autojs。2、资源仅供学习与参考,请勿用于商业用途,否则产生的一切后果将...

    android获取屏幕分辨率

    3. **处理不同屏幕方向**:屏幕可能处于横屏或竖屏模式,可以通过`Display`对象的`getRotation()`方法获取当前的旋转角度。根据旋转角度调整分辨率的读取方式,以确保得到的是实际的宽度和高度。 ```java Display ...

    以编程方式更改屏幕方向 更改屏幕方向 修改分辨率

    在编程领域,尤其是在开发桌面应用或者游戏时,有时我们需要根据应用程序的需求动态地调整用户的屏幕方向或分辨率。在C#中,这可以通过Windows API调用来实现。本文将详细讲解如何使用C#来更改屏幕方向和修改分辨率...

    屏幕坐标获取工具

    x坐标表示水平方向,y坐标表示垂直方向,原点(0,0)一般位于屏幕的左上角。屏幕坐标获取工具能够帮助开发者获取鼠标在屏幕上的精确位置,这对于调试、设计用户界面或者进行图形绘制等任务来说非常有用。 在开发...

    android改变变屏幕方向.docx

    这个函数首先获取当前Activity的屏幕方向,然后根据宽高比判断是否需要调整。最后,根据当前方向切换到相反的模式。 在开发过程中,理解并灵活运用这些屏幕方向设置,可以提高应用的适应性和用户体验。例如,某些...

    解决jQuery动态获取手机屏幕高和宽的问题

    屏幕尺寸会随着设备方向的改变而变化,因此在页面旋转时,可能需要重新获取屏幕尺寸并调整布局。可以监听`orientationchange`事件来实现: ```javascript $(window).on('orientationchange', function() { var ...

    android获取屏幕大小的正确方法

    在实际应用中,为了确保应用在各种屏幕尺寸上都有良好的表现,我们还需要考虑屏幕的宽高比和屏幕方向(横屏或竖屏)。可以使用`DisplayMetricsAspectJ`库来获取屏幕的宽高比,或者通过监听屏幕旋转事件来处理横竖屏...

    JavaScript获取屏幕高度和宽度等信息

    JavaScript作为一种广泛应用于网页编程的语言,提供了多种方法来获取屏幕的高度、宽度以及其他相关信息。以下将深入探讨如何使用JavaScript来获取屏幕尺寸和其他关键信息。 ### 一、获取屏幕尺寸 #### 1.1 使用`...

    屏幕方向锁定后自动旋转

    在移动设备上,屏幕方向锁定是一项常见的功能,它允许用户固定设备的屏幕方向,通常是横向或纵向,以防止在不需要时因设备转动而自动切换屏幕布局。然而,有些应用程序或特定场景下,我们可能希望即使在屏幕方向锁定...

    Screenlib 为Windows Mobile 开发识别屏幕方向的应用程序

    例如,`GetScreenOrientation()`函数是获取屏幕方向的主要接口,它可能返回一个枚举值,表示上述四种屏幕方向之一。开发者可以通过调用这个函数,实时监测屏幕状态的变化,从而更新UI布局或者调整应用的行为。 为了...

    动态获取坐标

    在这个“动态获取坐标”的项目中,我们可以推测开发者创建了一个应用程序,能够实时跟踪并显示手指在屏幕上的位置,为用户提供一个直观的坐标参考系。 首先,我们要理解的是“动态获取坐标”是如何实现的。在...

Global site tag (gtag.js) - Google Analytics