分享

使用HTML5构建iOS原生APP(5)

 quasiceo 2014-04-11

使用HTML5构建iOS原生APP(5)

更多 0

我的app基本上是由一个原生的navigation controller贯穿全局,然后在每一个scene中都有一个主要的UIWebView作为主要逻辑:

- (void)viewDidLoad{
	...
	self.webView = [[UIWebView alloc] initWithFrame:CGRectMake(.0f, 0.f, self.view.bounds.size.width, self.view.bounds.size.height -44)];//-44是减去标题栏高度
	self.webView.delegate = self;
	...
	[self.view addSubview:self.webView];
}

现在的问题是,当手机翻转的时候,webView的大小不会重绘,就会出现bug,解决办法很简单,就是实现翻转委托:

- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation {
    	NSLog(@"I have finished rotating");
	self.webView.frame = CGRectMake(.0f, 0.f, self.view.bounds.size.width, self.view.bounds.size.height));
}

就可以了,然后在webView中做好宽度自适应:

<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scable=0, minimun-scale=1.0, maximum-scale=1.0">

备注

介绍一下view的三种坐标属性:

Frame A view’s frame (CGRect) is the position of its rectangle in the superview’s coordinate system. By default it starts at the top left.

Bounds A view’s bounds (CGRect) expresses a view rectangle in its own coordinate system.

Center A center is a CGPoint expressed in terms of the superview’s coordinate system and it determines the position of the exact center point of the view.

本文出自:http:///, 原文地址:http:///wr?u=http%3A%2F%2F%2Fweblog%2Fiphone-rotation-webview%2F, 感谢原作者分享。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约