我正在制作一款可在iPhone和iPad上运行的应用程序。在iPhone上,可用空间有限,因此标签上的文字大小“小”,但在iPad上可用的屏幕尺寸较大,因此我希望标签文字大小也增加。我怎样才能做到这一点?
示例:我的iPhone上的标签大小为12磅,在iPad上我可能希望它们为26分。
我想为预处理器制作一些宏。某种样式表。每个iPhone尺寸都有相应的iPad尺寸。
(仅仅是为了说明我的想法)
#define 12 CheckIfIphone then 12 otherwise 26
我让宏的名称是iPhone上的文字大小,如果当前的设备是iPad,这将被替换。
答案 0 :(得分:1)
您可以查看the documentation以阅读有关检测当前设备的所有内容,尤其是UI_USER_INTERFACE_IDIOM
。这些问题也可能为您提供有用的信息:
How does one get UI_USER_INTERFACE_IDIOM() to work with iPhone OS SDK < 3.2
设置由设备类型决定的变量fontSize
,然后使用[myLabel setFont:[UIFont systemFontOfSize:fontSize]];
答案 1 :(得分:-2)
我会考虑使用两个不同的stylesheets
,类似
ipad.css
和iphone.css
然后检测您正在使用的设备并提供相应的stylesheet
使用此方法,您还可以拥有main.css
,其中包含大多数不会更改的样式。每个设备都会获得stylesheet
。特定于设备的样式表将仅包含该设备所需的那些样式。