- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation
{
if (rotateBag > 6) //после возврата, шудавторотейт вызывается 7 раз, это условие для погашения этих вызовов
{
if ([portret isEqualToString:@"horizontal"])
{
if (firstLaunch == 0) // блок для первого запуска (по умолчанию всегда выставляет ландскейпРайт, а это не всегда правильно)
{
if (interfacePosition == 0)
{ self.view.transform = CGAffineTransformMakeRotation(M_PI); }
else
{ self.view.transform = CGAffineTransformIdentity; }
firstLaunch++;
indexLandscape = interfacePosition;
}
else
{
if (indexLandscape == 1) //если изначальный вариант был правосторонний
{
if (toInterfaceOrientation == UIInterfaceOrientationLandscapeRight) // если ЛандскейпРайт
{ self.view.transform = CGAffineTransformIdentity;
interfacePosition = 1; }
if (toInterfaceOrientation == UIInterfaceOrientationLandscapeLeft) // если ЛандскейпЛефт
{ self.view.transform = CGAffineTransformMakeRotation(M_PI);
interfacePosition = 0; }
}
else //если изначальный вариант был левосторонний
{
if (toInterfaceOrientation == UIInterfaceOrientationLandscapeRight) // если ЛандскейпРайт
{ self.view.transform = CGAffineTransformMakeRotation(M_PI);
interfacePosition = 1; }
if (toInterfaceOrientation == UIInterfaceOrientationLandscapeLeft) // если ЛандскейпЛефт
{ self.view.transform = CGAffineTransformIdentity;
interfacePosition = 0; }
}
}
}
else
{
if (firstLaunch == 0) // блок для первого запуска (по умолчанию показывается правильно, поэтому ничего делать не надо)
{ firstLaunch++; }
else
{
if (toInterfaceOrientation == UIInterfaceOrientationPortrait)
{ self.view.transform = CGAffineTransformIdentity; }
if (toInterfaceOrientation == UIInterfaceOrientationPortraitUpsideDown)
{ self.view.transform = CGAffineTransformMakeRotation(M_PI); }
}
}
}
else {
rotateBag++;
}
return false;
}
Крутящаяся сумка в действии...
Поворот дисплея в 50 строк :\
SmackMyBitchUp 16.06.2011 11:25 # +2
и почему я читаю это и краснею, буд-то слово какое плохое ляпнул.
Lure Of Chaos 16.06.2011 14:13 # 0
то ли раскладку лень было переключать...
ling 16.06.2011 14:20 # +3
{ self.view.transform = CGAffineTransformIdentity; } // то трансформ равен ЦГАффинТрансформИдентити
guest8 09.04.2019 10:58 # −999