问题标签 [size-classes]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
507 浏览

xcode6 - Xcode 6 自定义启动屏幕

我正在尝试按照此处给出的内容制作基于 Xcode 6 的自定义启动屏幕新功能。我不明白如何在 iPad 上管理启动屏幕的方向。我的启动屏幕在中心包含一个水平矩形图像。使用尺寸类,我可以在横向或纵向模式下为 iPhone 设置不同的约束和视图。但无法为 iPad 做同样的事情。另外,使用上述方法创建启动屏幕时,如何锁定启动屏幕的方向?

0 投票
1 回答
383 浏览

ios - XCode 6 中通用应用程序和大小类的问题

使用 iOS7 创建我的通用应用程序很简单。使用 Storyboard,我布置了 iPhone 界面并将适当的 UI 元素连接到 ViewController。当它完成并工作时,在第二个 Storyboard 中创建 iPad 界面然后简单地将所有 UI 元素连接到我用于 iPhone 的同一个 ViewController 是一件简单的事情。

我在使用 XCode 6 时遇到的问题是,使用单个故事板(带有大小类)我只能将 UI 元素从一个特定大小类连接到 ViewController。

例如,我有一个以 wRegular hRegular 布局的 iPad 界面(iPad 是纵向或横向的)。我在 wAny hCompact(横向 iPhone)中布置了另一个 UI。在这两个 UI 中,我都有一个 UITextView,我想将它作为 IBOutlet 连接到单个 ViewController。UITextView 的功能是相同的,无论它在哪个设备上运行,但我不能把它放在 wAny hAny 中,因为两个设备之间的屏幕位置差异很大。

当我从 iPhone 界面进行连接时,它会自动从 iPad 界面删除连接,反之亦然。此行为仅在使用 IBOutlet 时出现。使用 IBAction,两个 UI 能够像以前一样指向 ViewController 中的单个方法。

我能想到的唯一解决方案是两个实际上使用两个故事板,这完全违背了大小类的目的。

0 投票
1 回答
397 浏览

ios - Xcode 6 Autolayout with Size Classes - 引入屏幕外 UIView 的最佳实践

在我的应用程序中,我有一部分 UIView,最初占用 320 x 115 pt 空间。在用户输入一些信息后,空间向左侧缩小了一半,并且在初始视图的右侧显示了一个新的 UIView,每个 UIView 现在占据了屏幕宽度的一半。在故事板布局中,我只是将第二个视图放置在屏幕外并在代码中将其移动到屏幕上。

现在我正在尝试使用 Autolayout 和大小类来限制我在屏幕上的视图,我不确定如何在通用 600 x 600 容器中布局屏幕外视图而不会出现严重的 Autolayout 错误。

如果有人可以就可能有用的文档提供建议或指导,我将不胜感激。如果需要,我可以提供任何新信息。

问候。

0 投票
1 回答
2451 浏览

ios - viewWillTransitionToSize:withTransitionCoordinator 在模拟器中返回错误的大小

嗨,我使用此代码在 iPhone 6 上支持 splitViewController:

问题是返回的大小是错误的 - 它为所有模拟器返回 CGSize(320,568)。+n 它返回宽度作为高度,反之亦然。

谢谢

0 投票
14 回答
16364 浏览

ios - Xcode 6 大小类中的自定义字体大小无法与自定义字体一起正常工作

Xcode 6有一个新功能,其中字体字体大小UILabelUITextField和 ,并且UIButton可以根据当前设备配置的大小类别自动设置,就在故事板中。例如,您可以将 a 设置为UILabel在“任意宽度、紧凑高度”(例如横向 iPhone)配置中使用字体大小 12,在“常规宽度、常规高度”配置(例如在iPad上)使用字体大小 18。更多信息请点击这里:

developer.apple.com/size_class

这在理论上是一个很棒的功能,因为它可以使您无需根据设备配置以编程方式在 UI 功能上设置不同的字体。现在,我有一些条件代码可以根据设备类型设置字体,但显然,这意味着我必须在整个应用程序的任何地方以编程方式设置字体。所以我一开始对这个功能非常兴奋,但我发现它对我来说在实际使用中存在严重问题(可能是一个错误)。请注意,我正在针对SDK 8构建并设置iOS 8的最小部署目标,因此这与与旧版本 iOS 的兼容性无关。

问题是这样的: 如果我为不同的大小类设置不同的字体大小并使用iOS提供的“系统”字体,一切都会按预期工作,并且字体大小会根据大小类而变化。如果我使用我的应用程序提供的自定义字体(是的,我在我的应用程序包中正确设置了它,因为它以编程方式工作)并将自定义字体设置为XCode 6 故事板中的标签,这也可以按预期工作。但是当我尝试为不同大小的类使用不同大小的自定义字体时,在情节提要中,它突然不起作用。配置的唯一区别是我选择的字体(自定义字体与系统字体)。相反,所有字体都显示在设备和模拟器作为默认大小默认系统字体,不管大小类(我通过调试器验证它正在用系统字体替换情节提要中指定的实际字体)。所以基本上,自定义字体的大小类功能似乎被破坏了。此外,有趣的是,自定义字体实际上在视图控制器的 XCode 6“预览”窗格中正确显示和调整大小:它仅在实际 iOS 系统上运行时才停止工作(这让我认为我正在正确配置它) .

我尝试了多种不同的自定义字体,但似乎对它们中的任何一种都不起作用,但如果我使用“系统”来代替,它总是有效的。

无论如何,有没有其他人在Xcode 6中看到过这个问题?

关于这是否是 iOS 8、Xcode 或其他错误的任何想法

我做错了吗?

正如我所说,我发现的唯一解决方法是继续以编程方式设置字体,就像我在大约三个 iOS 版本中所做的那样,因为这确实有效。

但如果我可以让它与自定义字体一起使用,我很想能够使用这个功能。我们的设计不接受使用系统字体。


附加信息: 从 Xcode 8.0 开始,该错误已修复。

0 投票
1 回答
250 浏览

ios8 - iOS8:找出代码中的尺寸等级?

我想根据设备类型有特定的表格行高。所以我不能在界面生成器中定义它,但需要知道代码中的当前尺寸类。我怎样才能做到这一点?

0 投票
1 回答
72 浏览

ios8 - 不同的水平间距取决于 orientaton iOs 8

我在 iOs 应用程序中有 3 个 UIView。如果 iPhone 是纵向的,我需要它们相距 20 点,如果它是横向的,我需要它们相距 40 点。我正在使用尺寸等级。在这两种情况下,我应该使用哪些尺寸类来定位水平空间约束?

0 投票
1 回答
547 浏览

uitableview - 当我使用 Size Classes 和 Auto layout 设置约束时,UITableView 消失了

我不明白为什么在设置宽度/高度约束时我的表格视图不出现!有人可以帮助我吗?

谢谢

0 投票
2 回答
3005 浏览

xcode - 如何将大小类自动布局重置为其 wAny hAny 默认值?

我正在研究一个 xcode 项目的特定大小的类布局,但遇到了障碍。

我的约束变得非常混乱,我想重新启动视图。

界面构建器中有没有办法让我将大小类(例如 wAny hCompact)重置为其任何约束设置?(即回到 wAny hAny 的情况)

0 投票
2 回答
2263 浏览

ios - 使用自适应布局的 UILabel 的不同字体大小

在 Xcode 6 中,我们有一个称为自适应布局的新功能。通过使用它,我创建了一个新项目,在该项目中我需要根据布局使用不同的字体大小。

在 iPhone 3.5 英寸屏幕中,我必须将字体大小设置为 17pt,而在 iPhone 中的其他屏幕大小必须为 21pt。

谁能告诉我如何使用自适应布局来实现这一目标?