我需要为 iPad 和 iPhone 设置不同颜色的标签,我知道我们可以更改不同尺寸类别的字体大小,但是有什么方法可以根据尺寸类别值设置不同的颜色
我知道有可用的代码解决方案,但我想知道 size 类是否可以在这方面帮助我
谢谢
我需要为 iPad 和 iPhone 设置不同颜色的标签,我知道我们可以更改不同尺寸类别的字体大小,但是有什么方法可以根据尺寸类别值设置不同的颜色
我知道有可用的代码解决方案,但我想知道 size 类是否可以在这方面帮助我
谢谢
您可以有两个不同颜色的标签,其中一个设置为仅适用于 iPhone 尺寸类别,另一个设置为仅适用于 iPad 类别。
[编辑]
好的,我不知道为什么我的回答被否决了。问题没有提到这个标签的用途。考虑标签是否仅用作静态文本是一种解决方案。如果您必须在 UIViewController 中保留此标签的引用,则不合适(如 Arslan Asim 所述)
您可以使用这段代码查看用户正在使用的设备类型。如果 IS_IPAD 为真,则显示 iPad 颜色。希望这可以帮助。
enum UIUserInterfaceIdiom : Int
{
case Unspecified
case Phone
case Pad
}
struct ScreenSize
{
static let SCREEN_WIDTH = UIScreen.mainScreen().bounds.size.width
static let SCREEN_HEIGHT = UIScreen.mainScreen().bounds.size.height
static let SCREEN_MAX_LENGTH = max(ScreenSize.SCREEN_WIDTH, ScreenSize.SCREEN_HEIGHT)
static let SCREEN_MIN_LENGTH = min(ScreenSize.SCREEN_WIDTH, ScreenSize.SCREEN_HEIGHT)
}
struct DeviceType
{
static let IS_IPHONE_4_OR_LESS = UIDevice.currentDevice().userInterfaceIdiom == .Phone && ScreenSize.SCREEN_MAX_LENGTH < 568.0
static let IS_IPHONE_5 = UIDevice.currentDevice().userInterfaceIdiom == .Phone && ScreenSize.SCREEN_MAX_LENGTH == 568.0
static let IS_IPHONE_6 = UIDevice.currentDevice().userInterfaceIdiom == .Phone && ScreenSize.SCREEN_MAX_LENGTH == 667.0
static let IS_IPHONE_6P = UIDevice.currentDevice().userInterfaceIdiom == .Phone && ScreenSize.SCREEN_MAX_LENGTH == 736.0
static let IS_IPAD = UIDevice.currentDevice().userInterfaceIdiom == .Pad && ScreenSize.SCREEN_MAX_LENGTH == 1024.0
}
使用以下代码行执行检查:
if(DeviceType.IS_IPAD)