我遇到以下問題:當我將手機從縱向更改爲橫向時,我想要消失的圖像。當我參加當前活動並且移動方向時,它工作得很好。如果我去其他活動並回來,它也可以工作得很好。但問題是,在我返回到主頁面後,onConfigurationChanged()將不會在我第一次改變方向時被調用。當我返回時,圖像將顯示/不能正確顯示,但當返回onConfigurationChanged()後我第一次改變方向時將不會被調用,並且圖像將保持/不保持,直到第二次更改方向。任何幫助你們都會非常感激! 這是我的代碼的幾個部分。我已經把configChange-orientation權限放在清單中,所以這不成問題。onConfigurationChanged在我第一次從另一個活動返回時未被調用
@Override
public void onConfigurationChanged(Configuration newConfig) {L.p("configList",5200184);
super.onConfigurationChanged(newConfig);
if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE&&isVertical==true) {
Logo.setVisibility(ImageView.GONE);
mainLogo.setVisibility(ImageView.GONE);
isHorizontal=true;
} else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT&&isHorizontal==true){
Logo.setVisibility(ImageView.VISIBLE);
mainLogo.setVisibility(ImageView.VISIBLE);
isVertical=true;
}
}
@Override
protected void onResume() {L.p("onResumeList", 5200113);
super.onResume();
Context ctx = getApplicationContext();
WindowManager wm = (WindowManager) ctx.getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
if((display.getOrientation() == Surface.ROTATION_90) || (display.getOrientation() == Surface.ROTATION_270))
{//Horizontal
L.p("you are resuming horizontal",5200124);
Logo.setVisibility(ImageView.INVISIBLE);
mainLogo.setVisibility(ImageView.INVISIBLE);
isHorizontal=true;
//isVertical=false;
}
else {//Vertical
L.p("you are resuming vertical",5200131);
Logo.setVisibility(ImageView.VISIBLE);
mainLogo.setVisibility(ImageView.VISIBLE);
isVertical=true;
// isHorizontal=false;
}
tracker.trackPageView("/deviceList");
}
謝謝!
我有同樣的問題。你有沒有設法修復它? – 2013-04-29 13:39:12