Hello ArenMook (& others)
As usual, it wasn't that hard to figure out after all. The problem was actually the UIRoot manual height, which was manually set to 1136 (iPhone 5), which is good for portrait, but for landscape the height should actually be 640. I was looking in UIPanel and UIAnchor before, but it turned out to be as simple as adding this to my GUIManager-class:
UIRoot root = NGUITools.FindInParents<UIRoot>(gameObject);
if (menuName == "InGame") {
root.manualHeight = 640;
Screen.autorotateToPortrait = false;
Screen.autorotateToPortraitUpsideDown = false;
Screen.orientation = ScreenOrientation.Landscape;
Screen.autorotateToLandscapeLeft = true;
Screen.autorotateToLandscapeRight = true;
} else {
root.manualHeight = 1136;
Screen.autorotateToLandscapeLeft = false;
Screen.autorotateToLandscapeRight = false;
Screen.orientation = ScreenOrientation.Portrait;
Screen.autorotateToPortrait = true;
Screen.autorotateToPortraitUpsideDown = true;
}
Little FYI (has nothing to do with NGUI), I had to add this to my update-class.
Screen.orientation = ScreenOrientation.AutoRotation;
Why? Because if I didn't do it, it wouldn't be on AutoRotation and even though I set autorotateToPortraitUpsideDown to true, it will just stay in the previously set ScreenOrientation.Portrait . However, I had to set ScreenOrientation.Portrait once, otherwise it would still be in ScreenOrientation.Landscape if I came from the game-screen, until I rotated my phone another 90 degrees.
Although I've had way more frustrating bugs, I hope others won't have to deal with my problems.