ios - After dismissViewController my view remain in previous view controller's orientation in iOS7 -
as working ios application support portrait orientation
. getting orientation related issue.
my app support portrait orientation
when parent p1.view push using navigation in portrait mode thats fine. p1.view subviewing child view c1.view
now in childview c1.view , there using delegate calling
-(void)imagepickercontroller:(uiimagepickercontroller *)picker
[self.delegate opencamera]
;//called c1.view-(void)opencamera //declared in p1.view { uiimagepickercontroller *picker = [[uiimagepickercontroller alloc] init]; picker.delegate = self; picker.allowsediting = no; picker.sourcetype = uiimagepickercontrollersourcetypecamera;> [self presentmodalviewcontroller:picker animated:yes]; }
now when capture photo in lanscape mode , dismiss presentmodalviewcontroller view appears in landscapmode instead of portrait mode.
- (bool)shouldautorotate { return yes; } - (bool)shouldautorotatetointerfaceorientation:(uiinterfaceorientation)interfaceorientation{ return (interfaceorientation == uiinterfaceorientationportrait || interfaceorientation == uiinterfaceorientationportraitupsidedown); } - (nsuinteger)supportedinterfaceorientations { return (uiinterfaceorientationmaskportrait | uiinterfaceorientationmaskportraitupsidedown); } - (uiinterfaceorientation)preferredinterfaceorientationforpresentation { return (uiinterfaceorientationmaskportrait | uiinterfaceorientationmaskportraitupsidedown); }
this methods define in both view controller(p1 & c1) , called when modelview dismiss, but viewcontroller remains in landscape should not happen.
this code working fine in ios6 not ios7
i think preferredinterfaceorientationforpresentation
not supposed return bit mask. try:
- (uiinterfaceorientation)preferredinterfaceorientationforpresentation { return uiinterfaceorientationportrait; }
Comments
Post a Comment