0
所以,我們正在使用第三方HUD模塊。它已經有點鬆動了,爲了讓它彈出所有的東西,我擴展它以使用代碼顯示自己HUD popup的旋轉
[[[[[UIApplication sharedApplication] keyWindow] addSubview:self.view];
但是,在橫向模式或上下顛倒的彈出窗口出現旋轉(或更準確地說而不是旋轉,始終與設備對齊,而不是接口)。我在的iOS相當新的,所以我不知道這是爲什麼,但我添加了一些代碼,以彌補
bool go = false;
float angle = 0.0;
if (mode == OLM_LandscapeLeft) // I calculate this further above, it works
{
go = true;
angle = 90;
}
[[[UIApplication sharedApplication] keyWindow] addSubview:self.view];
if (go)
{
float rads = (angle)/180 * M_PI;
CGAffineTransform transform = CGAffineTransformRotate(CGAffineTransformIdentity, rads);
self.view.transform = transform;
}
這似乎沒有任何效果,我是否適用之前或之後keyWindow.addSubview變換。
是否有正確的或至少有效的方法來做到這一點?如果有人能告訴我爲什麼這種addSubView似乎忽略了界面方向,那就太好了。
我通過使用UIInterfaceOrientation statusBarOrientation來計算我的變量OLD_LandscapeLeft。通過斷點驗證工作。轉換已應用,但彈出視圖仍以設備方向顯示。推測,如果上面的代碼中沒有明顯的錯誤,我很沮喪。到目前爲止,不是iOS的粉絲,行爲往往沒有意義。 – Chris 2014-09-25 16:46:05
但是,謝謝你的回答/ – Chris 2014-09-25 16:46:30
你是否正確設置視圖框架?愚蠢的問題,但緩慢的調試;-) – fat 2014-09-25 16:48:38