Androidは現在の画面の方向を検出します

1056 ワード

初心者ほどではない初心者として、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---
}

この2つの方法には何か違いがありますか?