在我的应用程序中,我允许多任务模式。但是,如果我的视野太受限制,我需要采取一些行动。观看 Apple 文档,我看到了这张图片
您可以看到,在 iPad Pro 的 SplitView 中,两个视图都是常规的,而在其他 iPad 中,两个视图都是紧凑的。我有什么可以让我知道我当前的视图是常规视图还是紧凑视图?
谢谢
在我的应用程序中,我允许多任务模式。但是,如果我的视野太受限制,我需要采取一些行动。观看 Apple 文档,我看到了这张图片
您可以看到,在 iPad Pro 的 SplitView 中,两个视图都是常规的,而在其他 iPad 中,两个视图都是紧凑的。我有什么可以让我知道我当前的视图是常规视图还是紧凑视图?
谢谢
这是我的解决方案:
if (self.view.traitCollection.horizontalSizeClass == UIUserInterfaceSizeClassRegular){
NSLog(@"REGULAR HORIZONTAL");
return TRUE;
}else{
NSLog(@"COMPACT HORIZONTAL");
return FALSE;
}
如果您需要以编程方式处理它,您可以覆盖-traitCollectionDidChange:
并查看该视图上的 self.traitCollection 属性,并根据输出进行更改。
但是-viewWillTransitionToSize:withTransitionCoordinator:
,您将对视图控制器的大小调整到多大做出更细粒度的响应。