android改變螢幕顯示方向

來源:互聯網
上載者:User

螢幕的顯示方向有橫排和豎排兩種:

下面的代碼可以為我們自動的控制長寬。

/***<br /> * 根據實際的螢幕長寬,自動的進行豎排或者橫排<br /> */<br />public void autoChange() {<br />DisplayMetrics displayMetrics = new DisplayMetrics();<br />getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);<br />int height = metrics.heightPixels;<br />int width = metrics.widthPixels;</p><p>// getRequestedOrientation方法可以擷取當前activity的排列模式<br />int requestOritation = getRequestedOrientation();</p><p>if (requestOritation == -1) {<br />Toast.makeText(this,<br />"當前activity中沒有設定screenOrientation屬性,根本不能執行翻轉操作",<br />Toast.LENGTH_LONG).show();<br />}<br />else{</p><p>/**<br /> * ActivityInfo.SCREEN_ORIENTATION_PORTRAIT代表豎排<br /> * (另一種形式為在Manifest.xml中為activity配置screenOrientation="portrait")<br /> * ActivityInfo則是一個和我們在Manifest.xml中為activity配置的資訊相關的類<br /> */<br />if(requestOritation==ActivityInfo.SCREEN_ORIENTATION_PORTRAIT&&width>height){<br />// setRequestedOrientation 可以重新設定<br />setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);<br />}<br />// 下邊的代碼省略了</p><p>}</p><p>}

----------------------------------------------------------------------------------

橫排:ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE

豎排: ActivityInfo.SCREEN_ORIENTATION_PORTRAIT

      擷取當前的排列模式:可以通過在activity中調用getRequestedOrientation()方法擷取,如果我們再AndroidManifest.xml中沒有為該activity設定screenOrientation屬性來初始化排列模式,那麼在編程模式下,無論我們怎麼排列,都是不起作用的。

        改變當前的排列模式:setRequestedOrientation()方法。

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.