看板 AndroidDev 關於我們 聯絡資訊
對不起我問題有點多...(一次發兩篇) 想請問一下有沒有大大有寫過類似的程式 因為手機很靈敏,擺直的擺橫的會顯示同一個layout的樣式 但太複雜的外觀沒辦法做到一種layout直的橫的都很好看 於是我決定寫兩個(一個for直,一個for橫) 小弟我有參考android範例大全5-22的方法再改寫 我設一個timer,createActivity後timer每0.1秒會call 這個函式 @Override public int getRequestedOrientation() { /* 此覆寫getRequestedOrientation方法,可取得當下螢幕的方向 */ return super.getRequestedOrientation(); } 取得當前銀幕的直橫方向 再把直或橫的值傳給 @Override public void setRequestedOrientation(int requestedOrientation) { switch(requestedOrientation) { case (ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE): setContentView(R.layout.land); break; case (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT): setContentView(R.layout.port); break; } super.setRequestedOrientation(requestedOrientation); } 這函式 估計它會自動切換xml檔達成效果 但事情沒我想的那麼簡單.... 用timer除了讓程式很lag之外(可能手機比較舊) 也沒達成我想要切直切橫的目的... 程式而是一直會顯示一開始onCreate裡設的那個layout 不會再有改變 但是只要手機一轉方向,layout雖然不變 但整個擺設還是會變得很醜 是不是一定要改寫底層才有辦法達到我想要的效果 下下策就是固定程式直向橫向了 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.115.158.190
LaPass:從直的變橫的會呼叫onResume()你可以在那邊setContentView 10/19 08:04
sorrel20567:請問onResume時要再自己判斷它是直是橫嗎? 10/19 14:23
LaPass:對 10/19 14:58
azxswq000:android:screenOrientation="sensor" 然後再去判斷橫直 10/19 17:02
azxswq000:來設定不同的layout 10/19 17:03
kunyu1976:可以去developer.android.com查Providing Resources 10/19 18:10