Ok

when my application first starts up I want it in portrait mode. However when a 
user switches to an editor it needs to transform in to landscape mode.

I have this working more or less correctly.

However, when I leave the editor, it switches back to portrait amd all of the 
portrait views are a mess.

I was able to get the very first portrait view to display correctly.
But when I switch to a new portrait view it has been resized to 460px high. And 
no matter what I do I absolutely cannot set it back to the correct 480px high.
nor can I get it to display lower on the screen to correct the display 

I've attempted to change both the bounds and frame and nothing happens it seems 
to have become read only.

How does one correct view sizes and origins when switching back from a manually 
set orientation to the original one?

this is my rotator:

-(void)rotateMainViewToOrientation:(UIDeviceOrientation)orientation
{

    
        [UIView beginAnimations:@"View Flip" context:nil];
        [UIView setAnimationDuration:.5];
        [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
        
        [[UIApplication sharedApplication] setStatusBarHidden:NO animated:NO];  
       
    
    [[UIApplication sharedApplication]setStatusBarOrientation:orientation];
    //NSLog(@"2");

    CGPoint newOrig =CGPointMake(0.0, 0.0);
    int dir = 90;
        if(!ISIPAD){
        if (orientation == UIDeviceOrientationLandscapeLeft || orientation == 
UIDeviceOrientationLandscapeRight){
            if (orientation == UIDeviceOrientationLandscapeRight) {
                dir = 270;
            }
                self.view.frame = CGRectMake(0.0, 0.0, 480, 320);
                self.view.center = CGPointMake(160.0f, 240.0f);
        }
        else{
            
            
            if(self.view.frame.size.width >320){
             //does nothing
                newOrig.x = -80;
                newOrig.y = 80;
                
                
            }
            self.view.center = CGPointMake(240.0f, 160.0);
            if(orientation == UIDeviceOrientationPortrait){
                dir = 0;
            }
            else{
                dir = 180.0;
            }
        }
        }
        else {
        if (orientation == UIDeviceOrientationLandscapeLeft || orientation == 
UIDeviceOrientationLandscapeRight){
            if (orientation == UIDeviceOrientationLandscapeRight) {
                dir = 270;
            }
            else dir = 90;
            self.view.frame = CGRectMake(0.0, 0.0, 1024, 768);
            self.view.center = CGPointMake(1024.0/2.0f, 768.0/2.0f);
        }
        }
    self.view.transform = CGAffineTransformIdentity;
    self.view.transform = CGAffineTransformMakeRotation(degreesToRadian(dir));
    self.view.transform = CGAffineTransformTranslate(self.view.transform, 
newOrig.x, newOrig.y);
 
        [UIView commitAnimations];
}_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to