您好,登錄后才能下訂單哦!
手機(jī)屏幕旋轉(zhuǎn)時(shí),試圖控制器可以相應(yīng)一些方法,可以再這些方法里自己布局視圖
旋轉(zhuǎn)方向的枚舉類型
typedefNS_ENUM(NSInteger, UIInterfaceOrientation) {
UIInterfaceOrientationPortrait = UIDeviceOrientationPortrait,
UIInterfaceOrientationPortraitUpsideDown = UIDeviceOrientationPortraitUpsideDown,
UIInterfaceOrientationLandscapeLeft = UIDeviceOrientationLandscapeRight,
UIInterfaceOrientationLandscapeRight = UIDeviceOrientationLandscapeLeft
};
是否支持旋轉(zhuǎn)
- (BOOL)shouldAutorotate
{
NSLog(@"%s",__FUNCTION__);
returnNO;
}
在旋轉(zhuǎn)某一個(gè)方向時(shí),是否支持旋轉(zhuǎn)
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation
{
NSLog(@"%s",__FUNCTION__);
returnNO;
}
將要旋轉(zhuǎn)時(shí)走的方法,可以判斷要轉(zhuǎn)向的方向
- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
{
NSLog(@"%s %f",__FUNCTION__,duration);
}
視圖將要布局子視圖
window調(diào)整顯示的view controller的bounds,由于view controller的bounds發(fā)生變化,將會(huì)觸發(fā) viewWillLayoutSubviews 方法。
- (void)viewWillLayoutSubviews
{
NSLog(@"%s",__FUNCTION__);
}
視圖完成布局子視圖
- (void)viewDidLayoutSubviews
{
NSLog(@"%s",__FUNCTION__);
}
接著當(dāng)前view controller的 willAnimateRotationToInterfaceOrientation:duration:
方法將會(huì)被調(diào)用。系統(tǒng)將會(huì)把該方法中執(zhí)行的所有屬性變化放到動(dòng)animation block中。
- (void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
{
NSLog(@"%s %f",__FUNCTION__,duration);
}
旋轉(zhuǎn)完成執(zhí)行的方法
- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation
{
NSLog(@"%s",__FUNCTION__);
}
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。