iphone - 方向发生时如何刷新 UIView?
<p><p>我的代码是这样的:</p>
<pre><code>- (void)viewDidLoad
{
;
}
-(void)setGridView
{
CGRect frame;
frame .origin.x=0;
frame.origin.y=20;
frame.size.width=GRID_WEIGHT;
frame.size.height=GRID_HEIGHT;
GridView *ObjGridView=[initWithFrame:frame];
[ loadNibNamed:@"GridView" owner:ObjGridView options:nil];
;
;
frame .origin.x+=GRID_WEIGHT;
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return YES;
}
</code></pre>
<p>此代码将 subview 添加到 View 并设置框架</p>
<p>我的问题:
1-当方向(横向或纵向)发生时,我如何刷新我的 View ,
因为我在横向模式下设置了 subview 的框架,我也想在我的纵向 View 中使用理智的 View 。(基本上我在哪里调用这个 -(void)setGridView 委托(delegate)方法)?</p>
<p>2-我怎么知道,我的 subview 超出了 View 的边界,以便我可以在我的 setGridView 方法中处理 subview ?</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>1.Below 方法会在你的方向改变时自动调用。根据每个方向进行必要的更改。</p>
<pre><code>- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
if (interfaceOrientation == UIInterfaceOrientationPortrait) {}
else if (interfaceOrientation == UIInterfaceOrientationLandscapeLeft) {}
else if (interfaceOrientation == UIInterfaceOrientationLandscapeRight) {}
else if (interfaceOrientation == UIInterfaceOrientationPortraitUpsideDown) {}
return YES;
}
</code></pre>
<p>2.您应该知道 View 的宽度和高度并相应地设置框架。这没什么大不了的。</p>
<p>希望这有帮助。</p></p>
<p style="font-size: 20px;">关于iphone - 方向发生时如何刷新 UIView?,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/10809969/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/10809969/
</a>
</p>
页:
[1]