Vra

Ek probeer om 'n iPhone aansoek wat twee subviews in die hoof venster het bou. Elke oog het sy eie UIViewController subklas wat daarmee gepaard gaan. Ook binne implementering elke kontroleerder se, ek het die volgende metode bygevoeg:

-(BOOL)shouldAutorotateToInterfaceOrientation:
 (UIInterfaceOrientation)interfaceOrientation {
    return YES;
   }

So, ek sou beide van die uitsig te reageer verwag om veranderinge in geaardheid. Dit is egter nie die geval nie. Slegs die eerste skerm bygevoeg word om die jeug se hoof venster reageer op geaardheid. (As ek ruil die volgorde die uitsig bygevoeg, dan net die ander oog reageer Met ander woorde, óf sal werk -.. Maar net een op 'n slag)

Hoekom is dit? Is dit nie moontlik om die oriëntasie veranderinge van meer as een siening hanteer?

Dankie!

EDIT: Iemand anders het hierdie vraag nie, so ek my oplossing hier is die kopiëring van:

Ek was in staat om hierdie probleem aan te spreek deur middel van 'n wortel oog en 'n wortel oog kontroleerder met die metode "shouldAutoRotate ..." en die toevoeging van my ander sienings as subviews om die wortel oog. Die subviews beërf die motor roterende gedrag, en die gepaardgaande siening beheerders moet nie nodig om ignoreer "shouldAutoRotate ..."

Was dit nuttig?

Oplossing 2

Ten slotte gaan my oplossing hier plaas:

Eintlik is dit afgekom na 'n "wortel" UIViewController. In hierdie, ek het die metode:

-(BOOL)shouldAutorotateToInterfaceOrientation:
(UIInterfaceOrientation)interfaceOrientation {
        return YES;
}

Ek het ook die menings wat ek wou outomaties roteer as subviews om hierdie wortel UIViewContoller se UIView bygevoeg. Hierdie subviews het ook oog beheerders maar doen nie ignoreer shouldAutorotateToInterfaceOrientation. Trouens, die toevoeging van hierdie metode om dié siening beheerders blyk geen effek hoegenaamd nie. Slegs shouldAutorotateToInterfaceOrientation die wortel oog contoller se lyk werk en al subviews behoorlik te roteer.

Ander wenke

Jy moet die shouldAutorotateToInterfaceOrientation metode ignoreer op al drie leiers wat jy het.

jy kan probeer om hierdie metode in die klas, wat die lig bevat beide standpunte jou viewController implementeer

Gelisensieer onder: CC-BY-SA met toeskrywing
Nie verbonde aan StackOverflow
scroll top