Android检测当前屏幕的方向

做为一个不那么像初学者的初学者,我注意到Android已经提供了检测屏幕方向的API,而我在《Android 4编程入门经典——开发智能手机与平板电脑应用》书中经常看到的做法却是比较屏幕的宽度和高度以此来判断是横向还是纵向模式。

书中做法

import android.view.Display;
import android.view.WindowManager;

@Override
public void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   setContentView(R.layout.main);

   //---get the current display info---
   WindowManager wm = getWindowManager();
   Display d = wm.getDefaultDisplay();
   if(d.getWidth() > d.getHeight()) {
      //---landscape mode---
      Log.d("Orientation", "Landscape mode");
   } else {
      //---portrait mode---
      Log.d("Orientation", "Portrait mode");
   }
}

而一般利用Android提供的方法可以这么做

if(getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE){
    //---landscape mode---
}
if(getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT){
    //---portrait mode---
}

这两种方法有什么区别么?

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏向治洪

android 面试之listview

ListView优化一直是一个老生常谈的问题,不管是面试还是平常的开发中,ListView永远不会被忽略掉,那么这篇文章我们来看看如何最大化的优化ListVie...

21570
来自专栏技术小黑屋

修复Android中Navigation Bar遮挡PopupWindow的问题

最近遇到了一个问题,关于Navigation Bar遮挡PopupWindow的问题,问题不难,粗略做一点总结。

13420
来自专栏james大数据架构

Android LayoutInflater详解

在实际开发中LayoutInflater这个类还是非常有用的,它的作用类似于findViewById()。不同点是LayoutInflater是用来找res/l...

24190
来自专栏向治洪

Android网络请求框架之Retrofit实践

网络访问框架经过了从使用最原始的AsyncTask构建简单的网络访问框架(甚至不能称为框架),后来使用开源的android-async-http库,再到使用go...

21380
来自专栏项勇

笔记43 | Android加载器Adapter的深入学习篇(二)

17660
来自专栏蜉蝣禅修之道

Android之共享已安装的apk应用

76550
来自专栏Android中高级开发

Android开发之漫漫长途 Ⅳ——Activity的显示之ViewRootImpl初探

该文章是一个系列文章,是本人在Android开发的漫漫长途上的一点感想和记录,我会尽量按照先易后难的顺序进行编写该系列。该系列引用了《Android开发艺术探索...

10330
来自专栏向治洪

DrawerLayout实现网易新闻抽屉效果

个人感觉网易的客户端比较前卫,有很多新鲜的东西,有时候模仿这些好的客户端能学到很多东西 开始今天的主要课题,下面是网易客户端抽屉模式实现的效果 ? ? 其...

28350
来自专栏向治洪

android TabLayout实现京东详情效果

Google在2015的IO大会上,给我们带来了更加详细的Material Design设计规范,同时,也给我们带来了全新的Android Design Sup...

345100
来自专栏刘望舒

Android View体系(十一)自定义ViewGroup

相关文章 Android View体系(一)视图坐标系 Android View体系(二)实现View滑动的六种方法 Android View体系(三)属...

31250

扫码关注云+社区

领取腾讯云代金券