简体   繁体   中英

Rotation of SubView according to it's superview

I had created an application using story board with auto layout support. Now i want to add an loading view on request/response. I had created loading view by code like this

self=[super initWithFrame:f];
[self setBackgroundColor:[UIColor colorWithRed:0.0 green:0.0 blue:0.0 alpha:0.7]];
CGPoint p=[self center];
self.activityIndicator=[[UIActivityIndicatorView alloc] initWithFrame: CGRectMake(p.x-37/2, p.y-32/2, 37, 37)];
[self.activityIndicator setActivityIndicatorViewStyle:UIActivityIndicatorViewStyleWhite];
[self addSubview:self.activityIndicator];

lblMsg=[[UILabel alloc] initWithFrame:CGRectMake(p.x-50/2,CGRectGetMaxY(self.activityIndicator.frame), 200, 30)];
lblMsg.text=@"Logging...";
lblMsg.backgroundColor=[UIColor clearColor];
lblMsg.textColor=[UIColor lightGrayColor];

[self addSubview:lblMsg];

self.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
return self;

Now problem is that it is not performing rotation. it is always coming in portrait mode. How can i apply autorotate functionality to it.

may be this will help you try this

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

- (BOOL)shouldAutorotate
{
    return YES;
}

- (NSInteger)supportedInterfaceOrientations
{
    return UIInterfaceOrientationMaskAllButUpsideDown;
}

i couldn't find where you are start animating for UIActivityIndicatorView.

[self.activityIndicator startAnimating];

One of the best framework to use for loadingView

1) https://github.com/jdg/MBProgressHUD

You can use NetworkActivityIndicator .

When you sending the request, use

[self setNetworkActivityIndicatorVisible:YES];

and when the response come back, use

[self setNetworkActivityIndicatorVisible:NO];

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM