MobileSafari上的网页标题看起来像是雕刻的,是实现此效果的主机。而且标题的字体系列和字体大小是多少?

非常感谢你!

最佳答案

在Xcode中打开任何iOS项目。
在模拟器中启动MobileSafari并访问google。
在Xcode中,选择“产品”>“附加到进程”>“ MobileSafari”。
选择“产品>调试>暂停”。
在调试控制台中,键入po [[UIApp keyWindow] recursiveDescription]


请注意,这仅适用于模拟器。在设备上,您只能附加到使用Xcode安装的应用程序。

完成所有操作后,您可以打印出Mobile Safari的视图层次结构。搜索它,我发现这个UILabel

   |    |    |    |    | <UILabel: 0x1096e800; frame = (0 0; 308 16); text = 'Google'; clipsToBounds = YES; userInteractionEnabled = NO; layer = <CALayer: 0x1096e8c0>>


每次执行此操作时,UILabel对象的地址都会不同。

无论如何,我们可以这样打印标签的字体:

(lldb) po [0x1096e800 font]
$2 = 0x0bb88110 <UICFFont: 0xbb88110> font-family: ".Helvetica NeueUI"; font-weight: bold; font-style: normal; font-size: 13px


我们可以打印其文本颜色:

(lldb) po [0x1096e800 textColor]
$13 = 0x1096eb50 UIDeviceRGBColorSpace 0.173 0.212 0.259 0.9


我们还可以打印其阴影颜色:

(lldb) po [0x1096e800 shadowColor]
$4 = 0x1096eb70 UIDeviceWhiteColorSpace 1 0.43


打印阴影偏移量比较困难,因为它是CGSize结构,而不是内置类型。调试器不了解CGSize,因为MobileSafari不包含调试信息。我们必须给调试器一个定义。这个可怕的命令有效:

(lldb) expr -o -- typedef struct { float x; float y; } CGSize; (id)[NSValue valueWithCGSize:(CGSize)[(id)0x1096e800 shadowOffset]]
$11 = 0x08063e60 NSSize: {0, 1}

10-06 02:29